/// <summary> /// tests moving a document in and out of folders /// </summary> [Test] public void ModelTestMoveDocuments() { const string folderTitle = "That is a new & weird folder"; const string docTitle = "that's the doc"; RequestSettings settings = new RequestSettings(this.ApplicationName, this.userName, this.passWord); // settings.PageSize = 15; DocumentsRequest r = new DocumentsRequest(settings); Document folder = new Document(); folder.Type = Document.DocumentType.Folder; folder.Title = folderTitle; /// first create the folder folder = r.CreateDocument(folder); Assert.IsTrue(folder.Title == folderTitle); // let's create a document Document doc = new Document(); doc.Type = Document.DocumentType.Document; doc.Title = docTitle; doc = r.CreateDocument(doc); // create the child r.MoveDocumentTo(folder, doc); // get the folder content list Feed <Document> children = r.GetFolderContent(folder); bool fFound = false; foreach (Document child in children.Entries) { if (child.ResourceId == doc.ResourceId) { fFound = true; break; } } Assert.IsTrue(fFound, "should have found the document in the folder"); }
private void ss() { GDataCredentials credentials = new GDataCredentials("*****@*****.**", "198ytdblbvrfpa$$w0rd"); RequestSettings settings = new RequestSettings("Testing", credentials); settings.AutoPaging = true; settings.PageSize = 100; DocumentsRequest documentsRequest = new DocumentsRequest(settings); Feed <Document> documentFeed = documentsRequest.GetDocuments(); Document doc = new Document(); foreach (Document document in documentFeed.Entries) { } documentsRequest.CreateDocument(new Document()); }
/// <summary> /// Creates a new folder in Google Docs. /// </summary> /// <param name="folderName">Name for the new folder.</param> public static void CreateNewFolder(string folderName) { try { var request = new DocumentsRequest(_settings); var reqFactory = (GDataRequestFactory)request.Service.RequestFactory; reqFactory.Proxy = GetProxy(); var newFolder = new Document { Type = Document.DocumentType.Folder, Title = folderName }; newFolder = request.CreateDocument(newFolder); // let's add the new directory to our folder dictionary if (newFolder != null) { AllFolders.Add(newFolder.ResourceId, newFolder); } } catch (GDataRequestException exRequest) { var error = !string.IsNullOrEmpty(exRequest.ResponseString) ? exRequest.ResponseString : exRequest.Message; if (exRequest.ResponseString == null && error.ToLowerInvariant().Contains("execution of request failed")) { throw new GDataRequestException("Couldn't create folder - internet down?"); } Trace.WriteLine(DateTime.Now + " - NocsService - couldn't create folder: " + error); throw new GDataRequestException(string.Format("Couldn't create folder: {0} - {1}", folderName, Tools.TrimErrorMessage(error))); } catch (Exception ex) { var error = GetErrorMessage(ex); Trace.WriteLine(DateTime.Now + " - NocsService - couldn't create folder: " + error); throw new Exception(string.Format("Couldn't create folder: {0} - {1}", folderName, error)); } }
/// <summary> /// tests moving a document in and out of folders /// </summary> [Test] public void ModelTestMoveDocuments() { const string folderTitle = "That is a new & weird folder"; const string docTitle = "that's the doc"; RequestSettings settings = new RequestSettings(this.ApplicationName, this.userName, this.passWord); // settings.PageSize = 15; DocumentsRequest r = new DocumentsRequest(settings); Document folder = new Document(); folder.Type = Document.DocumentType.Folder; folder.Title = folderTitle; /// first create the folder folder = r.CreateDocument(folder); Assert.IsTrue(folder.Title == folderTitle); // let's create a document Document doc = new Document(); doc.Type = Document.DocumentType.Document; doc.Title = docTitle; doc = r.CreateDocument(doc); // create the child r.MoveDocumentTo(folder, doc); // get the folder content list Feed<Document> children = r.GetFolderContent(folder); bool fFound = false; foreach (Document child in children.Entries ) { if (child.DocumentId == doc.DocumentId) { fFound = true; break; } } Assert.IsTrue(fFound, "should have found the document in the folder"); }
/// <summary> /// tests etag refresh on an entry level /// </summary> [Test] public void ModelTestFolders() { const string testTitle = "That is a new & weird subfolder"; const string parentTitle = "Granddaddy folder"; string parentID; string folderID; RequestSettings settings = new RequestSettings(this.ApplicationName, this.userName, this.passWord); // settings.PageSize = 15; DocumentsRequest r = new DocumentsRequest(settings); Document folder = new Document(); folder.Type = Document.DocumentType.Folder; folder.Title = testTitle; /// first create the folder folder = r.CreateDocument(folder); Assert.IsTrue(folder.Title == testTitle); r.Delete(folder); // let's create a hierarchy Document parent = new Document(); parent.Type = Document.DocumentType.Folder; parent.Title = parentTitle; parent = r.CreateDocument(parent); parentID = parent.Id; // create the child folder = new Document(); folder.Type = Document.DocumentType.Folder; folder.Title = testTitle; /// first create the folder folder = r.CreateDocument(folder); folderID = folder.Id; // now move the folder into the parent r.MoveDocumentTo(parent, folder); // now get the folder list Feed<Document> folders = r.GetFolders(); int iVerify = 2; List<Document> list = new List<Document>(); foreach (Document f in folders.Entries ) { list.Add(f); } bool found = false; foreach (Document f in list ) { Assert.IsTrue(f.Type == Document.DocumentType.Folder, "this should be a folder"); if (f.Id == parentID) { iVerify--; } if (f.Id == folderID) { iVerify--; // let's find the guy again. foreach (Document d in list) { if (f.ParentFolders.Contains(d.Self)) { found = true; break; } } } } Assert.IsTrue(found, "we did not find the parent folder"); Assert.IsTrue(iVerify==0, "We should have found both folders"); }
/// <summary> /// tests etag refresh on an entry level /// </summary> [Test] public void ModelTestFolders() { const string testTitle = "That is a new & weird subfolder"; const string parentTitle = "Granddaddy folder"; string parentID; string folderID; RequestSettings settings = new RequestSettings(this.ApplicationName, this.userName, this.passWord); // settings.PageSize = 15; DocumentsRequest r = new DocumentsRequest(settings); Document folder = new Document(); folder.Type = Document.DocumentType.Folder; folder.Title = testTitle; /// first create the folder folder = r.CreateDocument(folder); Assert.IsTrue(folder.Title == testTitle); r.Delete(folder); // let's create a hierarchy Document parent = new Document(); parent.Type = Document.DocumentType.Folder; parent.Title = parentTitle; parent = r.CreateDocument(parent); parentID = parent.Id; // create the child folder = new Document(); folder.Type = Document.DocumentType.Folder; folder.Title = testTitle; /// first create the folder folder = r.CreateDocument(folder); folderID = folder.Id; // now move the folder into the parent r.MoveDocumentTo(parent, folder); // now get the folder list Feed <Document> folders = r.GetFolders(); int iVerify = 2; List <Document> list = new List <Document>(); foreach (Document f in folders.Entries) { list.Add(f); } bool found = false; foreach (Document f in list) { Assert.IsTrue(f.Type == Document.DocumentType.Folder, "this should be a folder"); if (f.Id == parentID) { iVerify--; } if (f.Id == folderID) { iVerify--; // let's find the guy again. foreach (Document d in list) { if (f.ParentFolders.Contains(d.Self)) { found = true; break; } } } } Assert.IsTrue(found, "we did not find the parent folder"); Assert.IsTrue(iVerify == 0, "We should have found both folders"); }
private void ss() { GDataCredentials credentials = new GDataCredentials("*****@*****.**", "198ytdblbvrfpa$$w0rd"); RequestSettings settings = new RequestSettings("Testing", credentials); settings.AutoPaging = true; settings.PageSize = 100; DocumentsRequest documentsRequest = new DocumentsRequest(settings); Feed<Document> documentFeed = documentsRequest.GetDocuments(); Document doc = new Document(); foreach (Document document in documentFeed.Entries) { } documentsRequest.CreateDocument(new Document()); }
/// <summary> /// Creates a new document in Google Docs. /// </summary> /// <param name="folderId">An entry id for any given folder in which the new document is to be saved.</param> /// <param name="title">Title for the new document.</param> /// <param name="content">HTML content for the new document.</param> /// <param name="createDefaultDirectory"> /// true = create a default directory ('Nocs') /// fales = don't create a default directory /// </param> /// <returns>A newly created Document.</returns> public static Document CreateNewDocument(string folderId, string title, string content, bool createDefaultDirectory) { DocumentEntry newEntry; Document newDocument; content = Tools.FormatEditorContentToHtml(title, content); try { var request = new DocumentsRequest(_settings); var reqFactory = (GDataRequestFactory)request.Service.RequestFactory; reqFactory.Proxy = GetProxy(); // we'll first create a default 'Nocs'-folder if one isn't already created if (createDefaultDirectory) { var defaultFolder = new Document { Type = Document.DocumentType.Folder, Title = "Nocs" }; defaultFolder = request.CreateDocument(defaultFolder); // if we created our default directory, let's add it to our folder dictionary if (defaultFolder != null) { AllFolders.Add(defaultFolder.ResourceId, defaultFolder); folderId = defaultFolder.ResourceId; } } SetupService(null, null, 3, null, null); var textStream = new MemoryStream(Encoding.UTF8.GetBytes(content)); // we might be creating this document inside a particular folder var postUri = !string.IsNullOrEmpty(folderId) ? new Uri(string.Format(DocumentsListQuery.foldersUriTemplate, folderId)) : new Uri(DocumentsListQuery.documentsBaseUri); newEntry = _documentService.Insert(postUri, textStream, DocumentContentType, title) as DocumentEntry; } catch (GDataRequestException exRequest) { var error = !string.IsNullOrEmpty(exRequest.ResponseString) ? exRequest.ResponseString : exRequest.Message; if (exRequest.ResponseString == null && error.ToLowerInvariant().Contains("execution of request failed")) { throw new GDataRequestException("Couldn't create document - internet down?"); } // we'll also check for InvalidEntryException: Could not convert document // - assuming it's a known problem in GData API related to sharing, we will just ignore it if (error.ToLowerInvariant().Contains("could not convert document")) { Debug.WriteLine(string.Format("Couldn't convert document while creating a document: {0}", title)); return(null); } Trace.WriteLine(string.Format("{0} - Couldn't create a new document: {1} - {2}", DateTime.Now, title, error)); throw new GDataRequestException(string.Format("Couldn't create a new document: {0} - {1}", title, Tools.TrimErrorMessage(error))); } catch (Exception ex) { var error = GetErrorMessage(ex); Trace.WriteLine(DateTime.Now + " - NocsService - couldn't create a new document: " + error); throw new Exception(string.Format("Couldn't create document: {0} - {1}", title, error)); } // let's create a new Document if (newEntry != null) { newEntry.IsDraft = false; newDocument = new Document { AtomEntry = newEntry, Title = title, Content = Tools.ParseContent(content) }; // let's add the new document to our document dictionary and return it AllDocuments.Add(newDocument.ResourceId, newDocument); return(newDocument); } // we should never get here throw new Exception((string.Format("Couldn't create document: {0} - internet down?", title))); }