/// <summary>
		/// Add new folder to MyLibrary
		/// </summary>
		/// <param name="accessToken">Access token.</param>
        /// <param name="apiKey">The API key for the application</param>
		/// <param name="folder">Folder to be added (with name and parent id)</param>
		/// <returns>Returns a MyLibraryFolder object.</returns>
		public MyLibraryFolder AddLibraryFolder(string accessToken, string apiKey, MyLibraryFolder folder)
		{
			MyLibraryFolder newFolder = null;
            string url = String.Concat(Config.Endpoints.BaseUrl, Config.Endpoints.MyLibraryFolders);
            string json = folder.ToJSON();
            CUrlResponse response = RestClient.Post(url, accessToken, apiKey, json);

            if (response.IsError)
            {
                throw new CtctException(response.GetErrorMessage());
            }

            if (response.HasData)
            {
                newFolder = Component.FromJSON<MyLibraryFolder>(response.Body);
            }

            return newFolder;
		}
Exemple #2
0
		/// <summary>
		/// Add new folder to MyLibrary
		/// </summary>
		/// <param name="folder">Folder to be added (with name and parent id)</param>
		/// <returns>Returns a MyLibraryFolder object.</returns>
		public MyLibraryFolder AddLibraryFolder(MyLibraryFolder folder)
		{
            if (folder == null)
            {
                throw new IllegalArgumentException(CTCT.Resources.Errors.MyLibraryOrId);
            }

            string url = String.Concat(Settings.Endpoints.Default.BaseUrl, Settings.Endpoints.Default.MyLibraryFolders);
            string json = folder.ToJSON();
            RawApiResponse response = RestClient.Post(url, UserServiceContext.AccessToken, UserServiceContext.ApiKey, json);
            try
            {
                var newFolder = response.Get<MyLibraryFolder>();
                return newFolder;
            }
            catch (Exception ex)
            {
                throw new CtctException(ex.Message, ex);
            } 
		}
Exemple #3
0
		/// <summary>
		/// Delete a specific folder
		/// </summary>
		/// <param name="folder">The folder to be deleted</param>
		 /// <returns>Returns true if folder was deleted successfully, false otherwise</returns>
		public bool DeleteLibraryFolder(MyLibraryFolder folder)
		{
			if(folder == null)
			{
				 throw new IllegalArgumentException(Config.Errors.MyLibraryOrId);
			}

			return this.DeleteLibraryFolder(folder.Id);
		}
Exemple #4
0
		/// <summary>
		/// Update name and parent_id for a specific folder
		/// </summary>
		/// <param name="folder">Folder to be added (with name and parent id)</param>
		/// <param name="includePayload">Determines if update's folder JSON payload is returned</param>
		/// <returns>Returns a MyLibraryFolder object.</returns>
		public MyLibraryFolder UpdateLibraryFolder(MyLibraryFolder folder, bool? includePayload)
		{
			if (folder == null)
            {
                throw new IllegalArgumentException(Config.Errors.MyLibraryOrId);
            }

			return MyLibraryService.UpdateLibraryFolder(this.AccessToken, this.APIKey, folder, includePayload);
		}
Exemple #5
0
		/// <summary>
		/// Update name and parent_id for a specific folder
		/// </summary>
		/// <param name="folder">Folder to be added (with name and parent id)</param>
		/// <returns>Returns a MyLibraryFolder object.</returns>
		public MyLibraryFolder UpdateLibraryFolder(MyLibraryFolder folder)
		{
			return this.UpdateLibraryFolder(folder, null);
		}
Exemple #6
0
		/// <summary>
		/// Add new folder to MyLibrary
		/// </summary>
		/// <param name="folder">Folder to be added (with name and parent id)</param>
		/// <returns>Returns a MyLibraryFolder object.</returns>
		public MyLibraryFolder AddLibraryFolder(MyLibraryFolder folder)
		{
			if (folder == null)
            {
                throw new IllegalArgumentException(Config.Errors.MyLibraryOrId);
            }

			return MyLibraryService.AddLibraryFolder(this.AccessToken, this.APIKey, folder);
		}
Exemple #7
0
        public void LiveDeleteFolderTest()
        {
            var cc = new ConstantContactFactory(userServiceContext);
            var myLibraryService = cc.CreateMyLibraryService();

            var folder = new MyLibraryFolder();
            folder.Id = Guid.NewGuid().ToString();
            folder.Name = Guid.NewGuid().ToString();
            folder.CreatedDate = Extensions.ToISO8601String(DateTime.Now);
            folder.ModifiedDate = Extensions.ToISO8601String(DateTime.Now);

            var newFolder = myLibraryService.AddLibraryFolder(folder);
            bool result = myLibraryService.DeleteLibraryFolder(newFolder.Id);
            Assert.IsTrue(result);
        }
Exemple #8
0
        public void LiveGetFolderTest()
        {
            var cc = new ConstantContactFactory(userServiceContext);
            var myLibraryService = cc.CreateMyLibraryService();

            var folder = new MyLibraryFolder();
            folder.Id = Guid.NewGuid().ToString();
            folder.Name = Guid.NewGuid().ToString();
            folder.CreatedDate = Extensions.ToISO8601String(DateTime.Now);
            folder.ModifiedDate = Extensions.ToISO8601String(DateTime.Now);

            var newFolder = myLibraryService.AddLibraryFolder(folder);
            var getFolder = myLibraryService.GetLibraryFolder(newFolder.Id);

            Assert.IsNotNull(getFolder);
            Assert.AreEqual(getFolder.Id, newFolder.Id);
            Assert.AreEqual(getFolder.Name, newFolder.Name);
        }
Exemple #9
0
		public void LiveDeleteFolderTest()
		{
			var cc = new ConstantContact(ApiKey, AccessToken);

            var folder = new MyLibraryFolder();
			folder.Id = Guid.NewGuid().ToString();
			folder.Name = Guid.NewGuid().ToString();
			folder.CreatedDate = Extensions.ToISO8601String(DateTime.Now);
            folder.ModifiedDate = Extensions.ToISO8601String(DateTime.Now);

			var newFolder = cc.AddLibraryFolder(folder);
			bool result = cc.DeleteLibraryFolder(newFolder.Id);
			Assert.IsTrue(result);
		}
Exemple #10
0
		public void LiveGetFolderTest()
		{
			var cc = new ConstantContact(ApiKey, AccessToken);

            var folder = new MyLibraryFolder();
			folder.Id = Guid.NewGuid().ToString();
			folder.Name = Guid.NewGuid().ToString();
			folder.CreatedDate = Extensions.ToISO8601String(DateTime.Now);
            folder.ModifiedDate = Extensions.ToISO8601String(DateTime.Now);

			var newFolder = cc.AddLibraryFolder(folder);
			var getFolder = cc.GetLibraryFolder(newFolder.Id);

            Assert.IsNotNull(getFolder);
			Assert.AreEqual(getFolder.Id, newFolder.Id);
			Assert.AreEqual(getFolder.Name, newFolder.Name);
		}
Exemple #11
0
		/// <summary>
		/// Update name and parent_id for a specific folder
		/// </summary>
		/// <param name="accessToken">Access token.</param>
        /// <param name="apiKey">The API key for the application</param>
		/// <param name="folder">Folder to be added (with name and parent id)</param>
		/// <param name="includePayload">Determines if update's folder JSON payload is returned</param>
		/// <returns>Returns a MyLibraryFolder object.</returns>
		public MyLibraryFolder UpdateLibraryFolder(string accessToken, string apiKey, MyLibraryFolder folder, bool? includePayload)
		{
			MyLibraryFolder updatedFolder = null;
            string url = String.Concat(Config.Endpoints.BaseUrl, string.Format(Config.Endpoints.MyLibraryFolder, folder.Id), GetQueryParameters(new object[] { "include_payload", includePayload } ));
            string json = folder.ToJSON();
            CUrlResponse response = RestClient.Put(url, accessToken, apiKey, json);

            if (response.IsError)
            {
                throw new CtctException(response.GetErrorMessage());
            }

            if (response.HasData)
            {
                updatedFolder = Component.FromJSON<MyLibraryFolder>(response.Body);
            }

            return updatedFolder;
		}
Exemple #12
0
        /// <summary>
        /// Delete a specific folder
        /// </summary>
        /// <param name="folder">The MyLibraryFolder</param>
        /// <returns>Returns true if folder was deleted successfully, false otherwise</returns>
        public bool DeleteLibraryFolder(MyLibraryFolder folder)
        {
            if (folder == null)
            {
                throw new IllegalArgumentException(CTCT.Resources.Errors.MyLibraryOrId);
            }

            return DeleteLibraryFolder(folder.Id);
        }
Exemple #13
0
		/// <summary>
		/// Update name and parent_id for a specific folder
		/// </summary>
		/// <param name="folder">Folder to be added (with name and parent id)</param>
		/// <param name="includePayload">Determines if update's folder JSON payload is returned</param>
		/// <returns>Returns a MyLibraryFolder object.</returns>
		public MyLibraryFolder UpdateLibraryFolder(MyLibraryFolder folder, bool? includePayload)
		{
            if (folder == null)
            {
                throw new IllegalArgumentException(CTCT.Resources.Errors.MyLibraryOrId);
            }

            string url = String.Concat(Settings.Endpoints.Default.BaseUrl, string.Format(Settings.Endpoints.Default.MyLibraryFolder, folder.Id), GetQueryParameters(new object[] { "include_payload", includePayload } ));
            string json = folder.ToJSON();
            RawApiResponse response = RestClient.Put(url, UserServiceContext.AccessToken, UserServiceContext.ApiKey, json);
            try
            {
                var updatedFolder = response.Get<MyLibraryFolder>();
                return updatedFolder;
            }
            catch (Exception ex)
            {
                throw new CtctException(ex.Message, ex);
            }  
		}