/// <summary> /// get's called when a new feed was choosen from the combobox /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void FeedChooser_SelectedIndexChanged(object sender, System.EventArgs e) { ListEntry listEntry = this.FeedChooser.SelectedItem as ListEntry; this.AddEntry.Enabled = false; this.feedUri = null; if (listEntry != null) { BloggerEntry entry = listEntry.Entry; if (entry != null) { // find the link.rel==feed uri and refresh the treeview foreach (AtomLink link in entry.Links) { if (link.Rel == BaseNameTable.ServiceFeed) { this.feedUri = link.HRef.ToString(); break; } } if (this.feedUri != null) { this.AddEntry.Enabled = true; } } } RefreshFeed(this.feedUri); }
private void AddEntry_Click(object sender, System.EventArgs e) { addentry dlg = new addentry(); if (dlg.ShowDialog() == DialogResult.OK && dlg.Entry.Length > 0) { // now add this to the feed. BloggerEntry entry = new BloggerEntry(); entry.Content.Content = dlg.Entry; entry.Content.Type = "html"; entry.Title.Text = dlg.EntryTitle; string userName = this.UserName.Text; string passWord = this.Password.Text; BloggerService service = new BloggerService("BloggerSampleApp.NET"); if (userName != null && userName.Length > 0) { service.Credentials = new GDataCredentials(userName, passWord); } service.Insert(new Uri(this.feedUri), entry); RefreshFeed(this.feedUri); } }
public void BloggerETagTest() { Tracing.TraceMsg("Entering BloggerETagTest"); BloggerQuery query = new BloggerQuery(); BloggerService service = new BloggerService(this.ApplicationName); service.ProtocolMajor = 2; string title = "V1" + Guid.NewGuid().ToString(); service.RequestFactory = this.factory; query.Uri = new Uri(this.bloggerURI); // insert a new entry in version 1 AtomEntry entry = ObjectModelHelper.CreateAtomEntry(1); entry.Categories.Clear(); entry.Title.Text = title; entry.IsDraft = true; BloggerEntry returnedEntry = service.Insert(new Uri(this.bloggerURI), entry) as BloggerEntry; Assert.IsTrue(returnedEntry.ProtocolMajor == service.ProtocolMajor); Assert.IsTrue(entry.IsDraft); Assert.IsTrue(returnedEntry.IsDraft); Assert.IsTrue(returnedEntry.Etag != null); string etagOld = returnedEntry.Etag; returnedEntry.Content.Content = "This is a test"; BloggerEntry newEntry = returnedEntry.Update() as BloggerEntry; Assert.IsTrue(newEntry.Etag != null); Assert.IsTrue(newEntry.Etag != etagOld); }
public ListEntry(BloggerEntry entry) { this.entry = entry; }
public void GoogleAuthenticationTest() { Tracing.TraceMsg("Entering Blogger AuthenticationTest"); BloggerQuery query = new BloggerQuery(); BloggerService service = new BloggerService(this.ApplicationName); int iCount; if (this.bloggerURI != null) { if (this.userName != null) { service.Credentials = new GDataCredentials(this.userName, this.passWord); } service.RequestFactory = this.factory; query.Uri = new Uri(this.bloggerURI); BloggerFeed blogFeed = service.Query(query); ObjectModelHelper.DumpAtomObject(blogFeed, CreateDumpFileName("AuthenticationTest")); iCount = blogFeed.Entries.Count; String strTitle = "Dinner time" + Guid.NewGuid().ToString(); if (blogFeed != null && blogFeed.Entries.Count > 0) { BloggerEntry entry = ObjectModelHelper.CreateAtomEntry(1) as BloggerEntry; // blogger does not like labels yet. entry.Categories.Clear(); entry.Title.Text = strTitle; entry.Categories.Clear(); entry.IsDraft = true; entry.Updated = Utilities.EmptyDate; entry.Published = Utilities.EmptyDate; BloggerEntry newEntry = blogFeed.Insert(entry); iCount++; Tracing.TraceMsg("Created blogger entry"); // try to get just that guy..... BloggerQuery singleQuery = new BloggerQuery(); singleQuery.Uri = new Uri(newEntry.SelfUri.ToString()); BloggerFeed newFeed = service.Query(singleQuery); BloggerEntry sameGuy = newFeed.Entries[0] as BloggerEntry; Tracing.TraceMsg("retrieved blogger entry"); Assert.IsTrue(sameGuy.Title.Text.Equals(newEntry.Title.Text), "both titles should be identical"); Assert.IsTrue(sameGuy.IsDraft); } blogFeed = service.Query(query); Assert.AreEqual(iCount, blogFeed.Entries.Count, "Feed should have one more entry, it has: " + blogFeed.Entries.Count); if (blogFeed != null && blogFeed.Entries.Count > 0) { // look for the one with dinner time... foreach (AtomEntry entry in blogFeed.Entries) { Tracing.TraceMsg("Entrie title: " + entry.Title.Text); if (String.Compare(entry.Title.Text, strTitle) == 0) { entry.Content.Content = "Maybe stay until breakfast"; entry.Content.Type = "text"; entry.Update(); Tracing.TraceMsg("Updated entry"); } } } blogFeed = service.Query(query); Assert.AreEqual(iCount, blogFeed.Entries.Count, "Feed should have one more entry, it has: " + blogFeed.Entries.Count); if (blogFeed != null && blogFeed.Entries.Count > 0) { // look for the one with dinner time... foreach (AtomEntry entry in blogFeed.Entries) { Tracing.TraceMsg("Entrie title: " + entry.Title.Text); if (String.Compare(entry.Title.Text, strTitle) == 0) { entry.Delete(); iCount--; Tracing.TraceMsg("deleted entry"); } } } blogFeed = service.Query(query); Assert.AreEqual(iCount, blogFeed.Entries.Count, "Feed should have the same count again, it has: " + blogFeed.Entries.Count); service.Credentials = null; } }