//------------------------------------------------------------------------------
// <autogenerated>
//     This code was generated by a tool.
//     Runtime Version: 1.1.4322.2032
//
//     Changes to this file may cause incorrect behavior and will be lost if 
//     the code is regenerated.
// </autogenerated>
//------------------------------------------------------------------------------

// 
// This source code was auto-generated by Microsoft.VSDesigner, Version 1.1.4322.2032.
// 
namespace imagemanager.localhost {
    using System.Diagnostics;
    using System.Xml.Serialization;
    using System;
    using System.Web.Services.Protocols;
    using System.ComponentModel;
    using System.Web.Services;
    
    
    /// <remarks/>
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name="ImageManagerSoap", Namespace="http://mdid.jmu.edu/webservices")]
    public class ImageManager : System.Web.Services.Protocols.SoapHttpClientProtocol {
        
        /// <remarks/>
        public ImageManager() {
            this.Url = "http://localhost/orciid/WebServices/ImageManager.asmx";
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://mdid.jmu.edu/webservices/Login", RequestNamespace="http://mdid.jmu.edu/webservices", ResponseNamespace="http://mdid.jmu.edu/webservices", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string Login(string username, string password) {
            object[] results = this.Invoke("Login", new object[] {
                        username,
                        password});
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginLogin(string username, string password, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("Login", new object[] {
                        username,
                        password}, callback, asyncState);
        }
        
        /// <remarks/>
        public string EndLogin(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://mdid.jmu.edu/webservices/KeepAlive", RequestNamespace="http://mdid.jmu.edu/webservices", ResponseNamespace="http://mdid.jmu.edu/webservices", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void KeepAlive(string token) {
            this.Invoke("KeepAlive", new object[] {
                        token});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginKeepAlive(string token, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("KeepAlive", new object[] {
                        token}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndKeepAlive(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://mdid.jmu.edu/webservices/GetCollectionInfo", RequestNamespace="http://mdid.jmu.edu/webservices", ResponseNamespace="http://mdid.jmu.edu/webservices", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public CollectionInfo[] GetCollectionInfo(string token) {
            object[] results = this.Invoke("GetCollectionInfo", new object[] {
                        token});
            return ((CollectionInfo[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetCollectionInfo(string token, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetCollectionInfo", new object[] {
                        token}, callback, asyncState);
        }
        
        /// <remarks/>
        public CollectionInfo[] EndGetCollectionInfo(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((CollectionInfo[])(results[0]));
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://mdid.jmu.edu/webservices/GetCollectionData", RequestNamespace="http://mdid.jmu.edu/webservices", ResponseNamespace="http://mdid.jmu.edu/webservices", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public ImageInfo[] GetCollectionData(string token, int collectionid) {
            object[] results = this.Invoke("GetCollectionData", new object[] {
                        token,
                        collectionid});
            return ((ImageInfo[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetCollectionData(string token, int collectionid, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetCollectionData", new object[] {
                        token,
                        collectionid}, callback, asyncState);
        }
        
        /// <remarks/>
        public ImageInfo[] EndGetCollectionData(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((ImageInfo[])(results[0]));
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://mdid.jmu.edu/webservices/GetAvailableResources", RequestNamespace="http://mdid.jmu.edu/webservices", ResponseNamespace="http://mdid.jmu.edu/webservices", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] GetAvailableResources(string token, int collectionid) {
            object[] results = this.Invoke("GetAvailableResources", new object[] {
                        token,
                        collectionid});
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetAvailableResources(string token, int collectionid, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetAvailableResources", new object[] {
                        token,
                        collectionid}, callback, asyncState);
        }
        
        /// <remarks/>
        public string[] EndGetAvailableResources(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://mdid.jmu.edu/webservices/SetResourceData", RequestNamespace="http://mdid.jmu.edu/webservices", ResponseNamespace="http://mdid.jmu.edu/webservices", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public bool SetResourceData(string token, string sid, ImageSize format, [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")] System.Byte[] data) {
            object[] results = this.Invoke("SetResourceData", new object[] {
                        token,
                        sid,
                        format,
                        data});
            return ((bool)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginSetResourceData(string token, string sid, ImageSize format, System.Byte[] data, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("SetResourceData", new object[] {
                        token,
                        sid,
                        format,
                        data}, callback, asyncState);
        }
        
        /// <remarks/>
        public bool EndSetResourceData(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((bool)(results[0]));
        }
    }
    
    /// <remarks/>
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://mdid.jmu.edu/webservices")]
    public class CollectionInfo {
        
        /// <remarks/>
        public int id;
        
        /// <remarks/>
        public string title;
        
        /// <remarks/>
        public ImageSettings full;
        
        /// <remarks/>
        public ImageSettings medium;
        
        /// <remarks/>
        public ImageSettings thumbnail;
    }
    
    /// <remarks/>
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://mdid.jmu.edu/webservices")]
    public class ImageSettings {
        
        /// <remarks/>
        public int height;
        
        /// <remarks/>
        public int width;
        
        /// <remarks/>
        public int quality;
        
        /// <remarks/>
        public bool fixedsize;
        
        /// <remarks/>
        public int backgroundcolor;
    }
    
    /// <remarks/>
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://mdid.jmu.edu/webservices")]
    public class ImageInfo {
        
        /// <remarks/>
        public string id;
        
        /// <remarks/>
        public string resource;
        
        /// <remarks/>
        public string full;
        
        /// <remarks/>
        public string medium;
        
        /// <remarks/>
        public string thumb;
    }
    
    /// <remarks/>
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://mdid.jmu.edu/webservices")]
    public enum ImageSize {
        
        /// <remarks/>
        Thumbnail,
        
        /// <remarks/>
        Medium,
        
        /// <remarks/>
        Full,
        
        /// <remarks/>
        Unknown,
    }
}
