Exemplo n.º 1
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="name"></param>
        /// <param name="type"></param>
        /// <param name="bits"></param>
        /// <returns></returns>
        public async Task<MediaObjectInfo> NewMediaObject(string name, string type, byte[] bits)
        {
            var service = new Service(BlogConnectionInfo.MetaWeblogUrl);

            var inputStruct = new Struct();
            inputStruct["name"] = new StringValue(name);
            inputStruct["type"] = new StringValue(type);
            inputStruct["bits"] = new Base64Data(bits);

            var method = new MethodCall("metaWeblog.newMediaObject");
            method.Parameters.Add(BlogConnectionInfo.BlogId);
            method.Parameters.Add(BlogConnectionInfo.Username);
            method.Parameters.Add(BlogConnectionInfo.Password);
            method.Parameters.Add(inputStruct);

            var response = await service.Execute(method);
            var param = response.Parameters[0];
            var _struct = (Struct)param;

            var mediaobject = new MediaObjectInfo { Url = _struct.Get("url", StringValue.NullString).String };

            return mediaobject;
        }
Exemplo n.º 2
0
 public static StringValue XmlToValue(SXL.XElement parent)
 {
     var bv = new StringValue(parent.Value);
     return bv;
 }
Exemplo n.º 3
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="title"></param>
        /// <param name="description"></param>
        /// <param name="categories"></param>
        /// <param name="publish"></param>
        /// <param name="dateCreated"></param>
        /// <returns></returns>
        public async Task<string> NewPost(string title, string description, IList<string> categories, bool publish, System.DateTime? dateCreated)
        {
            Array categoriesArray;

            if (categories == null)
            {
                categoriesArray = new Array(0);
            }
            else
            {
                categoriesArray = new Array(categories.Count);
                categoriesArray.AddRange(categories.Select(c => new StringValue(c)));
            }

            var service = new Service(BlogConnectionInfo.MetaWeblogUrl);

            var _struct = new Struct();
            _struct["title"] = new StringValue(title);
            _struct["description"] = new StringValue(description);
            _struct["categories"] = categoriesArray;
            if (dateCreated.HasValue)
            {
                _struct["dateCreated"] = new DateTimeValue(dateCreated.Value);
                _struct["date_created_gmt"] = new DateTimeValue(dateCreated.Value.ToUniversalTime());

            }
            var method = new MethodCall("metaWeblog.newPost");
            method.Parameters.Add(BlogConnectionInfo.BlogId);
            method.Parameters.Add(BlogConnectionInfo.Username);
            method.Parameters.Add(BlogConnectionInfo.Password);
            method.Parameters.Add(_struct);
            method.Parameters.Add(publish);

            var response = await service.Execute(method);
            var param = response.Parameters[0];
            var postid = ((StringValue)param).String;

            return postid;
        }
Exemplo n.º 4
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="postid"></param>
        /// <param name="title"></param>
        /// <param name="description"></param>
        /// <param name="categories"></param>
        /// <param name="publish"></param>
        /// <returns></returns>
        public async Task<bool> EditPost(string postid, string title, string description, IList<string> categories, bool publish)
        {
            // Create an array to hold any categories
            var _categories = new Array(categories == null ? 0 : categories.Count);
            if (categories != null)
            {
                _categories.AddRange(categories.Select(c => new StringValue(c)));
            }

            var service = new Service(BlogConnectionInfo.MetaWeblogUrl);
            var struct_ = new Struct();
            struct_["title"] = new StringValue(title);
            struct_["description"] = new StringValue(description);
            struct_["categories"] = _categories;

            var method = new MethodCall("metaWeblog.editPost");
            method.Parameters.Add(postid);
            method.Parameters.Add(BlogConnectionInfo.Username);
            method.Parameters.Add(BlogConnectionInfo.Password);
            method.Parameters.Add(struct_);
            method.Parameters.Add(publish);

            var response = await service.Execute(method);
            var param = response.Parameters[0];
            var success = (BooleanValue)param;

            return success.Boolean;
        }
Exemplo n.º 5
0
        public static StringValue XmlToValue(SXL.XElement parent)
        {
            var bv = new StringValue(parent.Value);

            return(bv);
        }