public partial class ThriftService
{
public interface Iface
{
string Upload(byte[] data);
#if SILVERLIGHT
IAsyncResult Begin_Upload(AsyncCallback callback, object state, byte[] data);
string End_Upload(IAsyncResult asyncResult);
#endif
byte[] Download(string path);
#if SILVERLIGHT
IAsyncResult Begin_Download(AsyncCallback callback, object state, string path);
byte[] End_Download(IAsyncResult asyncResult);
#endif
bool Remove(string path);
#if SILVERLIGHT
IAsyncResult Begin_Remove(AsyncCallback callback, object state, string path);
bool End_Remove(IAsyncResult asyncResult);
#endif
}
public class Client : IDisposable, Iface
{
public Client(TProtocol prot) : this(prot, prot)
{
}
public Client(TProtocol iprot, TProtocol oprot)
{
iprot_ = iprot;
oprot_ = oprot;
}
protected TProtocol iprot_;
protected TProtocol oprot_;
protected int seqid_;
public TProtocol InputProtocol
{
get { return iprot_; }
}
public TProtocol OutputProtocol
{
get { return oprot_; }
}
#region " IDisposable Support "
private bool _IsDisposed;
// IDisposable
public void Dispose()
{
Dispose(true);
}
protected virtual void Dispose(bool disposing)
{
if (!_IsDisposed)
{
if (disposing)
{
if (iprot_ != null)
{
((IDisposable)iprot_).Dispose();
}
if (oprot_ != null)
{
((IDisposable)oprot_).Dispose();
}
}
}
_IsDisposed = true;
}
#endregion
#if SILVERLIGHT
public IAsyncResult Begin_Upload(AsyncCallback callback, object state, byte[] data)
{
return send_Upload(callback, state, data);
}
public string End_Upload(IAsyncResult asyncResult)
{
oprot_.Transport.EndFlush(asyncResult);
return recv_Upload();
}
#endif
public string Upload(byte[] data)
{
#if !SILVERLIGHT
send_Upload(data);
return recv_Upload();
#else
var asyncResult = Begin_Upload(null, null, data);
return End_Upload(asyncResult);
#endif
}
#if SILVERLIGHT
public IAsyncResult send_Upload(AsyncCallback callback, object state, byte[] data)
#else
public void send_Upload(byte[] data)
#endif
{
oprot_.WriteMessageBegin(new TMessage("Upload", TMessageType.Call, seqid_));
Upload_args args = new Upload_args();
args.Data = data;
args.Write(oprot_);
oprot_.WriteMessageEnd();
#if SILVERLIGHT
return oprot_.Transport.BeginFlush(callback, state);
#else
oprot_.Transport.Flush();
#endif
}
public string recv_Upload()
{
TMessage msg = iprot_.ReadMessageBegin();
if (msg.Type == TMessageType.Exception)
{
TApplicationException x = TApplicationException.Read(iprot_);
iprot_.ReadMessageEnd();
throw x;
}
Upload_result result = new Upload_result();
result.Read(iprot_);
iprot_.ReadMessageEnd();
if (result.__isset.success)
{
return result.Success;
}
throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "Upload failed: unknown result");
}
#if SILVERLIGHT
public IAsyncResult Begin_Download(AsyncCallback callback, object state, string path)
{
return send_Download(callback, state, path);
}
public byte[] End_Download(IAsyncResult asyncResult)
{
oprot_.Transport.EndFlush(asyncResult);
return recv_Download();
}
#endif
public byte[] Download(string path)
{
#if !SILVERLIGHT
send_Download(path);
return recv_Download();
#else
var asyncResult = Begin_Download(null, null, path);
return End_Download(asyncResult);
#endif
}
#if SILVERLIGHT
public IAsyncResult send_Download(AsyncCallback callback, object state, string path)
#else
public void send_Download(string path)
#endif
{
oprot_.WriteMessageBegin(new TMessage("Download", TMessageType.Call, seqid_));
Download_args args = new Download_args();
args.Path = path;
args.Write(oprot_);
oprot_.WriteMessageEnd();
#if SILVERLIGHT
return oprot_.Transport.BeginFlush(callback, state);
#else
oprot_.Transport.Flush();
#endif
}
public byte[] recv_Download()
{
TMessage msg = iprot_.ReadMessageBegin();
if (msg.Type == TMessageType.Exception)
{
TApplicationException x = TApplicationException.Read(iprot_);
iprot_.ReadMessageEnd();
throw x;
}
Download_result result = new Download_result();
result.Read(iprot_);
iprot_.ReadMessageEnd();
if (result.__isset.success)
{
return result.Success;
}
throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "Download failed: unknown result");
}
#if SILVERLIGHT
public IAsyncResult Begin_Remove(AsyncCallback callback, object state, string path)
{
return send_Remove(callback, state, path);
}
public bool End_Remove(IAsyncResult asyncResult)
{
oprot_.Transport.EndFlush(asyncResult);
return recv_Remove();
}
#endif
public bool Remove(string path)
{
#if !SILVERLIGHT
send_Remove(path);
return recv_Remove();
#else
var asyncResult = Begin_Remove(null, null, path);
return End_Remove(asyncResult);
#endif
}
#if SILVERLIGHT
public IAsyncResult send_Remove(AsyncCallback callback, object state, string path)
#else
public void send_Remove(string path)
#endif
{
oprot_.WriteMessageBegin(new TMessage("Remove", TMessageType.Call, seqid_));
Remove_args args = new Remove_args();
args.Path = path;
args.Write(oprot_);
oprot_.WriteMessageEnd();
#if SILVERLIGHT
return oprot_.Transport.BeginFlush(callback, state);
#else
oprot_.Transport.Flush();
#endif
}
public bool recv_Remove()
{
TMessage msg = iprot_.ReadMessageBegin();
if (msg.Type == TMessageType.Exception)
{
TApplicationException x = TApplicationException.Read(iprot_);
iprot_.ReadMessageEnd();
throw x;
}
Remove_result result = new Remove_result();
result.Read(iprot_);
iprot_.ReadMessageEnd();
if (result.__isset.success)
{
return result.Success;
}
throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "Remove failed: unknown result");
}
}
public class Processor : TProcessor
{
public Processor(Iface iface)
{
iface_ = iface;
processMap_["Upload"] = Upload_Process;
processMap_["Download"] = Download_Process;
processMap_["Remove"] = Remove_Process;
}
protected delegate void ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot);
private Iface iface_;
protected Dictionary<string, ProcessFunction> processMap_ = new Dictionary<string, ProcessFunction>();
public bool Process(TProtocol iprot, TProtocol oprot)
{
try
{
TMessage msg = iprot.ReadMessageBegin();
ProcessFunction fn;
processMap_.TryGetValue(msg.Name, out fn);
if (fn == null)
{
TProtocolUtil.Skip(iprot, TType.Struct);
iprot.ReadMessageEnd();
TApplicationException x = new TApplicationException(TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'");
oprot.WriteMessageBegin(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID));
x.Write(oprot);
oprot.WriteMessageEnd();
oprot.Transport.Flush();
return true;
}
fn(msg.SeqID, iprot, oprot);
}
catch (IOException)
{
return false;
}
return true;
}
public void Upload_Process(int seqid, TProtocol iprot, TProtocol oprot)
{
Upload_args args = new Upload_args();
args.Read(iprot);
iprot.ReadMessageEnd();
Upload_result result = new Upload_result();
result.Success = iface_.Upload(args.Data);
oprot.WriteMessageBegin(new TMessage("Upload", TMessageType.Reply, seqid));
result.Write(oprot);
oprot.WriteMessageEnd();
oprot.Transport.Flush();
}
public void Download_Process(int seqid, TProtocol iprot, TProtocol oprot)
{
Download_args args = new Download_args();
args.Read(iprot);
iprot.ReadMessageEnd();
Download_result result = new Download_result();
result.Success = iface_.Download(args.Path);
oprot.WriteMessageBegin(new TMessage("Download", TMessageType.Reply, seqid));
result.Write(oprot);
oprot.WriteMessageEnd();
oprot.Transport.Flush();
}
public void Remove_Process(int seqid, TProtocol iprot, TProtocol oprot)
{
Remove_args args = new Remove_args();
args.Read(iprot);
iprot.ReadMessageEnd();
Remove_result result = new Remove_result();
result.Success = iface_.Remove(args.Path);
oprot.WriteMessageBegin(new TMessage("Remove", TMessageType.Reply, seqid));
result.Write(oprot);
oprot.WriteMessageEnd();
oprot.Transport.Flush();
}
}
#if !SILVERLIGHT
[Serializable]
#endif
public partial class Upload_args : TBase
{
private byte[] _data;
public byte[] Data
{
get
{
return _data;
}
set
{
__isset.data = true;
this._data = value;
}
}
public Isset __isset;
#if !SILVERLIGHT
[Serializable]
#endif
public struct Isset
{
public bool data;
}
public Upload_args()
{
}
public void Read(TProtocol iprot)
{
TField field;
iprot.ReadStructBegin();
while (true)
{
field = iprot.ReadFieldBegin();
if (field.Type == TType.Stop)
{
break;
}
switch (field.ID)
{
case 1:
if (field.Type == TType.String)
{
Data = iprot.ReadBinary();
}
else
{
TProtocolUtil.Skip(iprot, field.Type);
}
break;
default:
TProtocolUtil.Skip(iprot, field.Type);
break;
}
iprot.ReadFieldEnd();
}
iprot.ReadStructEnd();
}
public void Write(TProtocol oprot)
{
TStruct struc = new TStruct("Upload_args");
oprot.WriteStructBegin(struc);
TField field = new TField();
if (Data != null && __isset.data)
{
field.Name = "data";
field.Type = TType.String;
field.ID = 1;
oprot.WriteFieldBegin(field);
oprot.WriteBinary(Data);
oprot.WriteFieldEnd();
}
oprot.WriteFieldStop();
oprot.WriteStructEnd();
}
public override string ToString()
{
StringBuilder sb = new StringBuilder("Upload_args(");
sb.Append("Data: ");
sb.Append(Data);
sb.Append(")");
return sb.ToString();
}
}
#if !SILVERLIGHT
[Serializable]
#endif
public partial class Upload_result : TBase
{
private string _success;
public string Success
{
get
{
return _success;
}
set
{
__isset.success = true;
this._success = value;
}
}
public Isset __isset;
#if !SILVERLIGHT
[Serializable]
#endif
public struct Isset
{
public bool success;
}
public Upload_result()
{
}
public void Read(TProtocol iprot)
{
TField field;
iprot.ReadStructBegin();
while (true)
{
field = iprot.ReadFieldBegin();
if (field.Type == TType.Stop)
{
break;
}
switch (field.ID)
{
case 0:
if (field.Type == TType.String)
{
Success = iprot.ReadString();
}
else
{
TProtocolUtil.Skip(iprot, field.Type);
}
break;
default:
TProtocolUtil.Skip(iprot, field.Type);
break;
}
iprot.ReadFieldEnd();
}
iprot.ReadStructEnd();
}
public void Write(TProtocol oprot)
{
TStruct struc = new TStruct("Upload_result");
oprot.WriteStructBegin(struc);
TField field = new TField();
if (this.__isset.success)
{
if (Success != null)
{
field.Name = "Success";
field.Type = TType.String;
field.ID = 0;
oprot.WriteFieldBegin(field);
oprot.WriteString(Success);
oprot.WriteFieldEnd();
}
}
oprot.WriteFieldStop();
oprot.WriteStructEnd();
}
public override string ToString()
{
StringBuilder sb = new StringBuilder("Upload_result(");
sb.Append("Success: ");
sb.Append(Success);
sb.Append(")");
return sb.ToString();
}
}
#if !SILVERLIGHT
[Serializable]
#endif
public partial class Download_args : TBase
{
private string _path;
public string Path
{
get
{
return _path;
}
set
{
__isset.path = true;
this._path = value;
}
}
public Isset __isset;
#if !SILVERLIGHT
[Serializable]
#endif
public struct Isset
{
public bool path;
}
public Download_args()
{
}
public void Read(TProtocol iprot)
{
TField field;
iprot.ReadStructBegin();
while (true)
{
field = iprot.ReadFieldBegin();
if (field.Type == TType.Stop)
{
break;
}
switch (field.ID)
{
case 1:
if (field.Type == TType.String)
{
Path = iprot.ReadString();
}
else
{
TProtocolUtil.Skip(iprot, field.Type);
}
break;
default:
TProtocolUtil.Skip(iprot, field.Type);
break;
}
iprot.ReadFieldEnd();
}
iprot.ReadStructEnd();
}
public void Write(TProtocol oprot)
{
TStruct struc = new TStruct("Download_args");
oprot.WriteStructBegin(struc);
TField field = new TField();
if (Path != null && __isset.path)
{
field.Name = "path";
field.Type = TType.String;
field.ID = 1;
oprot.WriteFieldBegin(field);
oprot.WriteString(Path);
oprot.WriteFieldEnd();
}
oprot.WriteFieldStop();
oprot.WriteStructEnd();
}
public override string ToString()
{
StringBuilder sb = new StringBuilder("Download_args(");
sb.Append("Path: ");
sb.Append(Path);
sb.Append(")");
return sb.ToString();
}
}
#if !SILVERLIGHT
[Serializable]
#endif
public partial class Download_result : TBase
{
private byte[] _success;
public byte[] Success
{
get
{
return _success;
}
set
{
__isset.success = true;
this._success = value;
}
}
public Isset __isset;
#if !SILVERLIGHT
[Serializable]
#endif
public struct Isset
{
public bool success;
}
public Download_result()
{
}
public void Read(TProtocol iprot)
{
TField field;
iprot.ReadStructBegin();
while (true)
{
field = iprot.ReadFieldBegin();
if (field.Type == TType.Stop)
{
break;
}
switch (field.ID)
{
case 0:
if (field.Type == TType.String)
{
Success = iprot.ReadBinary();
}
else
{
TProtocolUtil.Skip(iprot, field.Type);
}
break;
default:
TProtocolUtil.Skip(iprot, field.Type);
break;
}
iprot.ReadFieldEnd();
}
iprot.ReadStructEnd();
}
public void Write(TProtocol oprot)
{
TStruct struc = new TStruct("Download_result");
oprot.WriteStructBegin(struc);
TField field = new TField();
if (this.__isset.success)
{
if (Success != null)
{
field.Name = "Success";
field.Type = TType.String;
field.ID = 0;
oprot.WriteFieldBegin(field);
oprot.WriteBinary(Success);
oprot.WriteFieldEnd();
}
}
oprot.WriteFieldStop();
oprot.WriteStructEnd();
}
public override string ToString()
{
StringBuilder sb = new StringBuilder("Download_result(");
sb.Append("Success: ");
sb.Append(Success);
sb.Append(")");
return sb.ToString();
}
}
#if !SILVERLIGHT
[Serializable]
#endif
public partial class Remove_args : TBase
{
private string _path;
public string Path
{
get
{
return _path;
}
set
{
__isset.path = true;
this._path = value;
}
}
public Isset __isset;
#if !SILVERLIGHT
[Serializable]
#endif
public struct Isset
{
public bool path;
}
public Remove_args()
{
}
public void Read(TProtocol iprot)
{
TField field;
iprot.ReadStructBegin();
while (true)
{
field = iprot.ReadFieldBegin();
if (field.Type == TType.Stop)
{
break;
}
switch (field.ID)
{
case 1:
if (field.Type == TType.String)
{
Path = iprot.ReadString();
}
else
{
TProtocolUtil.Skip(iprot, field.Type);
}
break;
default:
TProtocolUtil.Skip(iprot, field.Type);
break;
}
iprot.ReadFieldEnd();
}
iprot.ReadStructEnd();
}
public void Write(TProtocol oprot)
{
TStruct struc = new TStruct("Remove_args");
oprot.WriteStructBegin(struc);
TField field = new TField();
if (Path != null && __isset.path)
{
field.Name = "path";
field.Type = TType.String;
field.ID = 1;
oprot.WriteFieldBegin(field);
oprot.WriteString(Path);
oprot.WriteFieldEnd();
}
oprot.WriteFieldStop();
oprot.WriteStructEnd();
}
public override string ToString()
{
StringBuilder sb = new StringBuilder("Remove_args(");
sb.Append("Path: ");
sb.Append(Path);
sb.Append(")");
return sb.ToString();
}
}
#if !SILVERLIGHT
[Serializable]
#endif
public partial class Remove_result : TBase
{
private bool _success;
public bool Success
{
get
{
return _success;
}
set
{
__isset.success = true;
this._success = value;
}
}
public Isset __isset;
#if !SILVERLIGHT
[Serializable]
#endif
public struct Isset
{
public bool success;
}
public Remove_result()
{
}
public void Read(TProtocol iprot)
{
TField field;
iprot.ReadStructBegin();
while (true)
{
field = iprot.ReadFieldBegin();
if (field.Type == TType.Stop)
{
break;
}
switch (field.ID)
{
case 0:
if (field.Type == TType.Bool)
{
Success = iprot.ReadBool();
}
else
{
TProtocolUtil.Skip(iprot, field.Type);
}
break;
default:
TProtocolUtil.Skip(iprot, field.Type);
break;
}
iprot.ReadFieldEnd();
}
iprot.ReadStructEnd();
}
public void Write(TProtocol oprot)
{
TStruct struc = new TStruct("Remove_result");
oprot.WriteStructBegin(struc);
TField field = new TField();
if (this.__isset.success)
{
field.Name = "Success";
field.Type = TType.Bool;
field.ID = 0;
oprot.WriteFieldBegin(field);
oprot.WriteBool(Success);
oprot.WriteFieldEnd();
}
oprot.WriteFieldStop();
oprot.WriteStructEnd();
}
public override string ToString()
{
StringBuilder sb = new StringBuilder("Remove_result(");
sb.Append("Success: ");
sb.Append(Success);
sb.Append(")");
return sb.ToString();
}
}
}