public MediaItemList GetFeaturedMedia() { string relativePath = GenerateRelativeFeaturedUrl(); QueryParameterList paramaters = new QueryParameterList(); paramaters.Add(new QueryParameter(_format, "xml")); string getFeaturedMediaUrl = OAuth.GenerateURL(_apiUrl, relativePath, _featuredMediaMethod, Token, paramaters); XmlResponseMessage getFeaturedMediaResponseMessage = GetXmlResponseMessageFromUrl(getFeaturedMediaUrl, _featuredMediaMethod); return(MediaItemList.CreateFromXmlResponseMessage(getFeaturedMediaResponseMessage)); }
private void GetAllUsersMedia_Click(object sender, EventArgs e) { try { MediaItemList mediaList = Program.Instance.Photobucket.GetAllUsersMedia(Username.Text); MessageBox.Show("GetAllUsersMedia Succeeded"); } catch (PhotobucketWebException) { MessageBox.Show("Network problems"); } catch (PhotobucketApiException apiEx) { MessageBox.Show("Error Code: " + apiEx.ErrorCode.ToString() + ": " + apiEx.ResponseMessage); } }
private void GetRecentUserMedia_Click(object sender, EventArgs e) { try { MediaItemList mediaList = Program.Instance.Photobucket.GetUsersRecentMedia(Username.Text, MediaType.All, 1, 200); Output.Text = mediaList.Count.ToString(); MessageBox.Show("Success"); } catch (PhotobucketWebException) { MessageBox.Show("Network problems"); } catch (PhotobucketApiException apiEx) { MessageBox.Show("Error Code: " + apiEx.ErrorCode.ToString() + ": " + apiEx.ResponseMessage); } }
public MediaItemList SearchMedia(string query, int num, int perpage, int page, int offset, int secondaryperpage, string type, bool recentFirst) { string relativePath = GenerateRelativeSearchUrl(query); QueryParameterList paramaters = new QueryParameterList(); paramaters.Add(new QueryParameter(_format, "xml")); paramaters.Add(new QueryParameter(_num, num.ToString())); paramaters.Add(new QueryParameter(_perpage, perpage.ToString())); paramaters.Add(new QueryParameter(_page, page.ToString())); paramaters.Add(new QueryParameter(_offset, offset.ToString())); paramaters.Add(new QueryParameter(_secondaryperpage, secondaryperpage.ToString())); paramaters.Add(new QueryParameter(_type, type)); paramaters.Add(new QueryParameter(_recentfirst, recentFirst ? "1" : "0")); string searchMediaUrl = OAuth.GenerateURL(_apiUrl, relativePath, _searchMediaMethod, Token, paramaters); XmlResponseMessage searchMediaResponseMessage = GetXmlResponseMessageFromUrl(searchMediaUrl, _searchMediaMethod); return(MediaItemList.CreateFromXmlResponseMessage(searchMediaResponseMessage)); }
/// <summary> /// Get all the users media of a specific type and number perPage /// </summary> /// <param name="user"></param> /// <param name="type"></param> /// <returns></returns> public MediaItemList GetAllUsersMedia(string username, MediaType type, int perPage) { MediaItemList mediaList = new MediaItemList(); int curPageNum = 0; bool stillMoreToGet = true; while (stillMoreToGet) { curPageNum++; MediaItemList curPageMediaList = GetUsersRecentMedia(username, type, curPageNum, perPage); mediaList.AddRange(curPageMediaList); if (curPageMediaList.Count < perPage) { stillMoreToGet = false; } } return mediaList; }
// Private methods //////////////////////////////////////////// protected override TaskStatus ExecuteStep (int s) { bool cont = true; // Main switch (currentStep) { case OpenerTaskStep.Init: objectsList = new List <ObjectInfo> (); xmlDocument = new XmlDocument (); xmlDocument.Load (fileName); currentStep = OpenerTaskStep.Header; break; case OpenerTaskStep.Header: //ReadHeader (); currentStep = OpenerTaskStep.ProjectInfoRead; break; case OpenerTaskStep.ProjectInfoRead: foreach (XmlNode node in xmlDocument.DocumentElement.ChildNodes) if (node.Name == "projectinfo") ResolveProjectInfoNode (node); // FIXME: Fail if not found/not resolved currentStep = OpenerTaskStep.ObjectListRead; break; case OpenerTaskStep.ObjectListRead: foreach (XmlNode node in xmlDocument.DocumentElement.ChildNodes) if (node.Name == "objectlist") objectListContainer = (ObjectListContainer) DataFactory.MakeDataElement (node as XmlElement); if (objectListContainer == null) throw new Exception ("ObjectListContainer not found!"); currentStep = OpenerTaskStep.ObjectListParse; break; case OpenerTaskStep.ObjectListParse: bool flush = EnumerateSomeObjects (); if (flush) currentStep = OpenerTaskStep.ObjectListUnBoil; break; case OpenerTaskStep.ObjectListUnBoil: bool done = UnBoilSomeObjects (); if (done) currentStep = OpenerTaskStep.FindRoots; break; case OpenerTaskStep.FindRoots: projectTrackList = (TrackList) FindRoot ("tracklist"); projectTagList = (TagList) FindRoot ("taglist"); projectStuffList = (StuffList) FindRoot ("stufflist"); projectClipList = (ClipList) FindRoot ("cliplist"); projectMediaItemList = (MediaItemList) FindRoot ("mediaitemlist"); projectPipeline = (Gdv.Pipeline) FindRoot ("pipeline"); projectCommander = (Commander) FindRoot ("commander"); projectFormat = (Gdv.ProjectFormat) FindRoot ("projectformat"); currentStep = OpenerTaskStep.Finished; break; case OpenerTaskStep.Finished: cont = false; break; default: break; } // Post if (cont) return TaskStatus.Running; else return TaskStatus.Done; }
// Private methods //////////////////////////////////////////// protected override TaskStatus ExecuteStep(int s) { bool cont = true; // Main switch (currentStep) { case OpenerTaskStep.Init: objectsList = new List <ObjectInfo> (); xmlDocument = new XmlDocument(); xmlDocument.Load(fileName); currentStep = OpenerTaskStep.Header; break; case OpenerTaskStep.Header: //ReadHeader (); currentStep = OpenerTaskStep.ProjectInfoRead; break; case OpenerTaskStep.ProjectInfoRead: foreach (XmlNode node in xmlDocument.DocumentElement.ChildNodes) { if (node.Name == "projectinfo") { ResolveProjectInfoNode(node); } } // FIXME: Fail if not found/not resolved currentStep = OpenerTaskStep.ObjectListRead; break; case OpenerTaskStep.ObjectListRead: foreach (XmlNode node in xmlDocument.DocumentElement.ChildNodes) { if (node.Name == "objectlist") { objectListContainer = (ObjectListContainer) DataFactory.MakeDataElement(node as XmlElement); } } if (objectListContainer == null) { throw new Exception("ObjectListContainer not found!"); } currentStep = OpenerTaskStep.ObjectListParse; break; case OpenerTaskStep.ObjectListParse: bool flush = EnumerateSomeObjects(); if (flush) { currentStep = OpenerTaskStep.ObjectListUnBoil; } break; case OpenerTaskStep.ObjectListUnBoil: bool done = UnBoilSomeObjects(); if (done) { currentStep = OpenerTaskStep.FindRoots; } break; case OpenerTaskStep.FindRoots: projectTrackList = (TrackList)FindRoot("tracklist"); projectTagList = (TagList)FindRoot("taglist"); projectStuffList = (StuffList)FindRoot("stufflist"); projectClipList = (ClipList)FindRoot("cliplist"); projectMediaItemList = (MediaItemList)FindRoot("mediaitemlist"); projectPipeline = (Gdv.Pipeline)FindRoot("pipeline"); projectCommander = (Commander)FindRoot("commander"); projectFormat = (Gdv.ProjectFormat)FindRoot("projectformat"); currentStep = OpenerTaskStep.Finished; break; case OpenerTaskStep.Finished: cont = false; break; default: break; } // Post if (cont) { return(TaskStatus.Running); } else { return(TaskStatus.Done); } }
public MediaItemList GetAllUsersMediaWithTag(string username, MediaTag mediaTag) { MediaItemList mediaList = new MediaItemList(); int curPageNum = 0; bool stillMoreToGet = true; while (stillMoreToGet) { curPageNum++; MediaItemList curPageMediaList = GetUsersMediaWithTag(username, mediaTag.Name, curPageNum, 200); mediaList.AddRange(curPageMediaList); if (curPageMediaList.Count < 200) { stillMoreToGet = false; } } return mediaList; }