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

namespace SharePointProducts.CopyMove.Samples.CopyMove {
    using System.Runtime.Serialization;
    using System;
    
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveElement", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveResult))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveMessageData))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItem))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveStatus))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveTransaction))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItemTransaction))]
    public partial class CopyMoveElement : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveResult", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    public partial class CopyMoveResult : SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveElement {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long ByteCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ErrorCodeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveMessage[] ErrorsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ExecutionTimeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int FileCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int FolderCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ItemCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItem[] ItemsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string MessageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProgressPctField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string TransactionIdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveMessage[] WarningsField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long ByteCount {
            get {
                return this.ByteCountField;
            }
            set {
                if ((this.ByteCountField.Equals(value) != true)) {
                    this.ByteCountField = value;
                    this.RaisePropertyChanged("ByteCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ErrorCode {
            get {
                return this.ErrorCodeField;
            }
            set {
                if ((this.ErrorCodeField.Equals(value) != true)) {
                    this.ErrorCodeField = value;
                    this.RaisePropertyChanged("ErrorCode");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveMessage[] Errors {
            get {
                return this.ErrorsField;
            }
            set {
                if ((object.ReferenceEquals(this.ErrorsField, value) != true)) {
                    this.ErrorsField = value;
                    this.RaisePropertyChanged("Errors");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ExecutionTime {
            get {
                return this.ExecutionTimeField;
            }
            set {
                if ((this.ExecutionTimeField.Equals(value) != true)) {
                    this.ExecutionTimeField = value;
                    this.RaisePropertyChanged("ExecutionTime");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int FileCount {
            get {
                return this.FileCountField;
            }
            set {
                if ((this.FileCountField.Equals(value) != true)) {
                    this.FileCountField = value;
                    this.RaisePropertyChanged("FileCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int FolderCount {
            get {
                return this.FolderCountField;
            }
            set {
                if ((this.FolderCountField.Equals(value) != true)) {
                    this.FolderCountField = value;
                    this.RaisePropertyChanged("FolderCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ItemCount {
            get {
                return this.ItemCountField;
            }
            set {
                if ((this.ItemCountField.Equals(value) != true)) {
                    this.ItemCountField = value;
                    this.RaisePropertyChanged("ItemCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItem[] Items {
            get {
                return this.ItemsField;
            }
            set {
                if ((object.ReferenceEquals(this.ItemsField, value) != true)) {
                    this.ItemsField = value;
                    this.RaisePropertyChanged("Items");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Message {
            get {
                return this.MessageField;
            }
            set {
                if ((object.ReferenceEquals(this.MessageField, value) != true)) {
                    this.MessageField = value;
                    this.RaisePropertyChanged("Message");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProgressPct {
            get {
                return this.ProgressPctField;
            }
            set {
                if ((this.ProgressPctField.Equals(value) != true)) {
                    this.ProgressPctField = value;
                    this.RaisePropertyChanged("ProgressPct");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string TransactionId {
            get {
                return this.TransactionIdField;
            }
            set {
                if ((object.ReferenceEquals(this.TransactionIdField, value) != true)) {
                    this.TransactionIdField = value;
                    this.RaisePropertyChanged("TransactionId");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveMessage[] Warnings {
            get {
                return this.WarningsField;
            }
            set {
                if ((object.ReferenceEquals(this.WarningsField, value) != true)) {
                    this.WarningsField = value;
                    this.RaisePropertyChanged("Warnings");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveMessageData", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    public partial class CopyMoveMessageData : SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveElement {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string IdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ValueField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Id {
            get {
                return this.IdField;
            }
            set {
                if ((object.ReferenceEquals(this.IdField, value) != true)) {
                    this.IdField = value;
                    this.RaisePropertyChanged("Id");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Value {
            get {
                return this.ValueField;
            }
            set {
                if ((object.ReferenceEquals(this.ValueField, value) != true)) {
                    this.ValueField = value;
                    this.RaisePropertyChanged("Value");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveItem", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    public partial class CopyMoveItem : SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveElement {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int IdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string TitleField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Guid UniqueIdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string UrlField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int Id {
            get {
                return this.IdField;
            }
            set {
                if ((this.IdField.Equals(value) != true)) {
                    this.IdField = value;
                    this.RaisePropertyChanged("Id");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Title {
            get {
                return this.TitleField;
            }
            set {
                if ((object.ReferenceEquals(this.TitleField, value) != true)) {
                    this.TitleField = value;
                    this.RaisePropertyChanged("Title");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Guid UniqueId {
            get {
                return this.UniqueIdField;
            }
            set {
                if ((this.UniqueIdField.Equals(value) != true)) {
                    this.UniqueIdField = value;
                    this.RaisePropertyChanged("UniqueId");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Url {
            get {
                return this.UrlField;
            }
            set {
                if ((object.ReferenceEquals(this.UrlField, value) != true)) {
                    this.UrlField = value;
                    this.RaisePropertyChanged("Url");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveStatus", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    public partial class CopyMoveStatus : SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveElement {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string MessageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long ProgressByteCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProgressFileCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProgressFolderCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProgressItemCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProgressPctField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProgressTimeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool RunningField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int StateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long TotalByteCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int TotalFileCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int TotalFolderCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int TotalItemCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool TransactionCompletedField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Message {
            get {
                return this.MessageField;
            }
            set {
                if ((object.ReferenceEquals(this.MessageField, value) != true)) {
                    this.MessageField = value;
                    this.RaisePropertyChanged("Message");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long ProgressByteCount {
            get {
                return this.ProgressByteCountField;
            }
            set {
                if ((this.ProgressByteCountField.Equals(value) != true)) {
                    this.ProgressByteCountField = value;
                    this.RaisePropertyChanged("ProgressByteCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProgressFileCount {
            get {
                return this.ProgressFileCountField;
            }
            set {
                if ((this.ProgressFileCountField.Equals(value) != true)) {
                    this.ProgressFileCountField = value;
                    this.RaisePropertyChanged("ProgressFileCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProgressFolderCount {
            get {
                return this.ProgressFolderCountField;
            }
            set {
                if ((this.ProgressFolderCountField.Equals(value) != true)) {
                    this.ProgressFolderCountField = value;
                    this.RaisePropertyChanged("ProgressFolderCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProgressItemCount {
            get {
                return this.ProgressItemCountField;
            }
            set {
                if ((this.ProgressItemCountField.Equals(value) != true)) {
                    this.ProgressItemCountField = value;
                    this.RaisePropertyChanged("ProgressItemCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProgressPct {
            get {
                return this.ProgressPctField;
            }
            set {
                if ((this.ProgressPctField.Equals(value) != true)) {
                    this.ProgressPctField = value;
                    this.RaisePropertyChanged("ProgressPct");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProgressTime {
            get {
                return this.ProgressTimeField;
            }
            set {
                if ((this.ProgressTimeField.Equals(value) != true)) {
                    this.ProgressTimeField = value;
                    this.RaisePropertyChanged("ProgressTime");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool Running {
            get {
                return this.RunningField;
            }
            set {
                if ((this.RunningField.Equals(value) != true)) {
                    this.RunningField = value;
                    this.RaisePropertyChanged("Running");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int State {
            get {
                return this.StateField;
            }
            set {
                if ((this.StateField.Equals(value) != true)) {
                    this.StateField = value;
                    this.RaisePropertyChanged("State");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long TotalByteCount {
            get {
                return this.TotalByteCountField;
            }
            set {
                if ((this.TotalByteCountField.Equals(value) != true)) {
                    this.TotalByteCountField = value;
                    this.RaisePropertyChanged("TotalByteCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int TotalFileCount {
            get {
                return this.TotalFileCountField;
            }
            set {
                if ((this.TotalFileCountField.Equals(value) != true)) {
                    this.TotalFileCountField = value;
                    this.RaisePropertyChanged("TotalFileCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int TotalFolderCount {
            get {
                return this.TotalFolderCountField;
            }
            set {
                if ((this.TotalFolderCountField.Equals(value) != true)) {
                    this.TotalFolderCountField = value;
                    this.RaisePropertyChanged("TotalFolderCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int TotalItemCount {
            get {
                return this.TotalItemCountField;
            }
            set {
                if ((this.TotalItemCountField.Equals(value) != true)) {
                    this.TotalItemCountField = value;
                    this.RaisePropertyChanged("TotalItemCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool TransactionCompleted {
            get {
                return this.TransactionCompletedField;
            }
            set {
                if ((this.TransactionCompletedField.Equals(value) != true)) {
                    this.TransactionCompletedField = value;
                    this.RaisePropertyChanged("TransactionCompleted");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveTransaction", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItemTransaction))]
    public partial class CopyMoveTransaction : SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveElement {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string[] ExcludePropertiesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ExportFilterField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveFileExistsAction FileExistsActionField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool HaltOnNonFatalErrorField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool HaltOnWarningField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string IdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool IncludeFoldersField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool IncludeSecurityField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool IncludeTimestampsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool IncludeUserInfoField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool IncludeVersionsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool OverwriteFilesField;
        
        private string SourceUrlField;
        
        private string TargetUrlField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string[] ExcludeProperties {
            get {
                return this.ExcludePropertiesField;
            }
            set {
                if ((object.ReferenceEquals(this.ExcludePropertiesField, value) != true)) {
                    this.ExcludePropertiesField = value;
                    this.RaisePropertyChanged("ExcludeProperties");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string ExportFilter {
            get {
                return this.ExportFilterField;
            }
            set {
                if ((object.ReferenceEquals(this.ExportFilterField, value) != true)) {
                    this.ExportFilterField = value;
                    this.RaisePropertyChanged("ExportFilter");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveFileExistsAction FileExistsAction {
            get {
                return this.FileExistsActionField;
            }
            set {
                if ((this.FileExistsActionField.Equals(value) != true)) {
                    this.FileExistsActionField = value;
                    this.RaisePropertyChanged("FileExistsAction");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool HaltOnNonFatalError {
            get {
                return this.HaltOnNonFatalErrorField;
            }
            set {
                if ((this.HaltOnNonFatalErrorField.Equals(value) != true)) {
                    this.HaltOnNonFatalErrorField = value;
                    this.RaisePropertyChanged("HaltOnNonFatalError");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool HaltOnWarning {
            get {
                return this.HaltOnWarningField;
            }
            set {
                if ((this.HaltOnWarningField.Equals(value) != true)) {
                    this.HaltOnWarningField = value;
                    this.RaisePropertyChanged("HaltOnWarning");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Id {
            get {
                return this.IdField;
            }
            set {
                if ((object.ReferenceEquals(this.IdField, value) != true)) {
                    this.IdField = value;
                    this.RaisePropertyChanged("Id");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool IncludeFolders {
            get {
                return this.IncludeFoldersField;
            }
            set {
                if ((this.IncludeFoldersField.Equals(value) != true)) {
                    this.IncludeFoldersField = value;
                    this.RaisePropertyChanged("IncludeFolders");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool IncludeSecurity {
            get {
                return this.IncludeSecurityField;
            }
            set {
                if ((this.IncludeSecurityField.Equals(value) != true)) {
                    this.IncludeSecurityField = value;
                    this.RaisePropertyChanged("IncludeSecurity");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool IncludeTimestamps {
            get {
                return this.IncludeTimestampsField;
            }
            set {
                if ((this.IncludeTimestampsField.Equals(value) != true)) {
                    this.IncludeTimestampsField = value;
                    this.RaisePropertyChanged("IncludeTimestamps");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool IncludeUserInfo {
            get {
                return this.IncludeUserInfoField;
            }
            set {
                if ((this.IncludeUserInfoField.Equals(value) != true)) {
                    this.IncludeUserInfoField = value;
                    this.RaisePropertyChanged("IncludeUserInfo");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool IncludeVersions {
            get {
                return this.IncludeVersionsField;
            }
            set {
                if ((this.IncludeVersionsField.Equals(value) != true)) {
                    this.IncludeVersionsField = value;
                    this.RaisePropertyChanged("IncludeVersions");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool OverwriteFiles {
            get {
                return this.OverwriteFilesField;
            }
            set {
                if ((this.OverwriteFilesField.Equals(value) != true)) {
                    this.OverwriteFilesField = value;
                    this.RaisePropertyChanged("OverwriteFiles");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)]
        public string SourceUrl {
            get {
                return this.SourceUrlField;
            }
            set {
                if ((object.ReferenceEquals(this.SourceUrlField, value) != true)) {
                    this.SourceUrlField = value;
                    this.RaisePropertyChanged("SourceUrl");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)]
        public string TargetUrl {
            get {
                return this.TargetUrlField;
            }
            set {
                if ((object.ReferenceEquals(this.TargetUrlField, value) != true)) {
                    this.TargetUrlField = value;
                    this.RaisePropertyChanged("TargetUrl");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveItemTransaction", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    public partial class CopyMoveItemTransaction : SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveTransaction {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string[] ContentTypeMappingsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string[] DefaultFieldValuesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool EnforceRequiredFieldValuesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string[] FieldMappingsField;
        
        private string[] ItemsField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string[] ContentTypeMappings {
            get {
                return this.ContentTypeMappingsField;
            }
            set {
                if ((object.ReferenceEquals(this.ContentTypeMappingsField, value) != true)) {
                    this.ContentTypeMappingsField = value;
                    this.RaisePropertyChanged("ContentTypeMappings");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string[] DefaultFieldValues {
            get {
                return this.DefaultFieldValuesField;
            }
            set {
                if ((object.ReferenceEquals(this.DefaultFieldValuesField, value) != true)) {
                    this.DefaultFieldValuesField = value;
                    this.RaisePropertyChanged("DefaultFieldValues");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool EnforceRequiredFieldValues {
            get {
                return this.EnforceRequiredFieldValuesField;
            }
            set {
                if ((this.EnforceRequiredFieldValuesField.Equals(value) != true)) {
                    this.EnforceRequiredFieldValuesField = value;
                    this.RaisePropertyChanged("EnforceRequiredFieldValues");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string[] FieldMappings {
            get {
                return this.FieldMappingsField;
            }
            set {
                if ((object.ReferenceEquals(this.FieldMappingsField, value) != true)) {
                    this.FieldMappingsField = value;
                    this.RaisePropertyChanged("FieldMappings");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)]
        public string[] Items {
            get {
                return this.ItemsField;
            }
            set {
                if ((object.ReferenceEquals(this.ItemsField, value) != true)) {
                    this.ItemsField = value;
                    this.RaisePropertyChanged("Items");
                }
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveFileExistsAction", Namespace="http://schemas.datacontract.org/2004/07/SharePointProducts.CopyMove")]
    public enum CopyMoveFileExistsAction : int {
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Default = 0,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Skip = 1,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Overwrite = 2,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Rename = 3,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        AddNewVersion = 4,
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="CopyMoveMessage", Namespace="http://www.sharepointproducts.com/copymove")]
    [System.SerializableAttribute()]
    public partial class CopyMoveMessage : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string DataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ExceptionField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int IdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveMessageData[] ItemsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string TextField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Data {
            get {
                return this.DataField;
            }
            set {
                if ((object.ReferenceEquals(this.DataField, value) != true)) {
                    this.DataField = value;
                    this.RaisePropertyChanged("Data");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Exception {
            get {
                return this.ExceptionField;
            }
            set {
                if ((object.ReferenceEquals(this.ExceptionField, value) != true)) {
                    this.ExceptionField = value;
                    this.RaisePropertyChanged("Exception");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int Id {
            get {
                return this.IdField;
            }
            set {
                if ((this.IdField.Equals(value) != true)) {
                    this.IdField = value;
                    this.RaisePropertyChanged("Id");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveMessageData[] Items {
            get {
                return this.ItemsField;
            }
            set {
                if ((object.ReferenceEquals(this.ItemsField, value) != true)) {
                    this.ItemsField = value;
                    this.RaisePropertyChanged("Items");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Text {
            get {
                return this.TextField;
            }
            set {
                if ((object.ReferenceEquals(this.TextField, value) != true)) {
                    this.TextField = value;
                    this.RaisePropertyChanged("Text");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(Namespace="http://www.sharepointproducts.com/copymove", ConfigurationName="CopyMove.ICopyMoveService")]
    public interface ICopyMoveService {
        
        [System.ServiceModel.OperationContractAttribute(Action="http://www.sharepointproducts.com/copymove/ICopyMoveService/Copy", ReplyAction="http://www.sharepointproducts.com/copymove/ICopyMoveService/CopyResponse")]
        SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveResult Copy(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItemTransaction transaction);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://www.sharepointproducts.com/copymove/ICopyMoveService/Move", ReplyAction="http://www.sharepointproducts.com/copymove/ICopyMoveService/MoveResponse")]
        SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveResult Move(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItemTransaction transaction);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://www.sharepointproducts.com/copymove/ICopyMoveService/GetStatus", ReplyAction="http://www.sharepointproducts.com/copymove/ICopyMoveService/GetStatusResponse")]
        SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveStatus GetStatus(string transactionId);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://www.sharepointproducts.com/copymove/ICopyMoveService/GetItems", ReplyAction="http://www.sharepointproducts.com/copymove/ICopyMoveService/GetItemsResponse")]
        SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItem[] GetItems(string folderUrl);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://www.sharepointproducts.com/copymove/ICopyMoveService/GetVersion", ReplyAction="http://www.sharepointproducts.com/copymove/ICopyMoveService/GetVersionResponse")]
        string GetVersion();
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public interface ICopyMoveServiceChannel : SharePointProducts.CopyMove.Samples.CopyMove.ICopyMoveService, System.ServiceModel.IClientChannel {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public partial class CopyMoveServiceClient : System.ServiceModel.ClientBase<SharePointProducts.CopyMove.Samples.CopyMove.ICopyMoveService>, SharePointProducts.CopyMove.Samples.CopyMove.ICopyMoveService {
        
        public CopyMoveServiceClient() {
        }
        
        public CopyMoveServiceClient(string endpointConfigurationName) : 
                base(endpointConfigurationName) {
        }
        
        public CopyMoveServiceClient(string endpointConfigurationName, string remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public CopyMoveServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public CopyMoveServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress) {
        }
        
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveResult Copy(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItemTransaction transaction) {
            return base.Channel.Copy(transaction);
        }
        
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveResult Move(SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItemTransaction transaction) {
            return base.Channel.Move(transaction);
        }
        
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveStatus GetStatus(string transactionId) {
            return base.Channel.GetStatus(transactionId);
        }
        
        public SharePointProducts.CopyMove.Samples.CopyMove.CopyMoveItem[] GetItems(string folderUrl) {
            return base.Channel.GetItems(folderUrl);
        }
        
        public string GetVersion() {
            return base.Channel.GetVersion();
        }
    }
}
