本文整理汇总了C#中IServerChannelSinkStack类的典型用法代码示例。如果您正苦于以下问题:C# IServerChannelSinkStack类的具体用法?C# IServerChannelSinkStack怎么用?C# IServerChannelSinkStack使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
IServerChannelSinkStack类属于命名空间,在下文中一共展示了IServerChannelSinkStack类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: ProcessMessage
/// <summary></summary>
public ServerProcessing ProcessMessage(
IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
if (NextChannelSink != null)
{
SetClientIpAddressDataHelper(requestHeaders);
ServerProcessing spres = NextChannelSink.ProcessMessage(
sinkStack,
requestMsg,
requestHeaders,
requestStream,
out responseMsg,
out responseHeaders,
out responseStream);
return spres;
}
responseMsg = null;
responseHeaders = null;
responseStream = null;
return new ServerProcessing();
}
开发者ID:sillsdev,项目名称:FieldWorks,代码行数:29,代码来源:ClientIPServerSink.cs
示例2: ProcessMessage
public ServerProcessing ProcessMessage(
IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
if (_nextSink != null)
{
IPAddress ip =
requestHeaders[CommonTransportKeys.IPAddress] as IPAddress;
CallContext.SetData("ClientIPAddress", ip);
ServerProcessing spres = _nextSink.ProcessMessage(
sinkStack,
requestMsg,
requestHeaders,
requestStream,
out responseMsg,
out responseHeaders,
out responseStream);
return spres;
}
else
{
responseMsg = null;
responseHeaders = null;
responseStream = null;
return new ServerProcessing();
}
}
开发者ID:jsvgoncalves,项目名称:tdin-chat-server,代码行数:32,代码来源:ClientIPServerSinkProvider.cs
示例3: ProcessMessage
public ServerProcessing ProcessMessage (IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
IMessage call;
string uri = (string)requestHeaders [CommonTransportKeys.RequestUri];
if (requestMsg == null) {
call = (IMessage)format.DeserializeRequest (requestStream, uri);
} else {
call = requestMsg;
}
next_sink.ProcessMessage (sinkStack, call, requestHeaders, null,
out responseMsg, out responseHeaders, out responseStream);
responseStream = new MemoryStream ();
format.SerializeResponse (responseStream, responseMsg);
return ServerProcessing.Complete;
}
开发者ID:nlhepler,项目名称:mono,代码行数:27,代码来源:SimpleServerFormatterSink.cs
示例4: ProcessMessage
public ServerProcessing ProcessMessage(
IServerChannelSinkStack sinkStack_in,
IMessage requestMsg_in,
ITransportHeaders requestHeaders_in,
Stream requestStream_in,
out IMessage responseMsg_out,
out ITransportHeaders responseHeaders_out,
out Stream responseStream_out
) {
if (nextchannelsink_ != null) {
CallContext.SetData(
"ClientIPAddress",
((IPAddress)requestHeaders_in[CommonTransportKeys.IPAddress]).ToString()
);
ServerProcessing _serverprocessing = NextChannelSink.ProcessMessage(
sinkStack_in,
requestMsg_in,
requestHeaders_in,
requestStream_in,
out responseMsg_out,
out responseHeaders_out,
out responseStream_out
);
return _serverprocessing;
} else {
responseMsg_out = null;
responseHeaders_out = null;
responseStream_out = null;
return new ServerProcessing();
}
}
开发者ID:BackupTheBerlios,项目名称:ogen-svn,代码行数:33,代码来源:ClientIPAddressServerSink.cs
示例5: ProcessMessage
[System.Security.SecurityCritical] // auto-generated
public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders, Stream requestStream,
out IMessage responseMsg, out ITransportHeaders responseHeaders,
out Stream responseStream)
{
if (requestMsg == null)
{
throw new ArgumentNullException(
"requestMsg",
Environment.GetResourceString("Remoting_Channel_DispatchSinkMessageMissing"));
}
Contract.EndContractBlock();
// check arguments
if (requestStream != null)
{
throw new RemotingException(
Environment.GetResourceString("Remoting_Channel_DispatchSinkWantsNullRequestStream"));
}
responseHeaders = null;
responseStream = null;
return ChannelServices.DispatchMessage(sinkStack, requestMsg, out responseMsg);
} // ProcessMessage
开发者ID:iskiselev,项目名称:JSIL.NetFramework,代码行数:26,代码来源:dispatchchannelsink.cs
示例6: ProcessMessage
public ServerProcessing ProcessMessage(
IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
var ip = requestHeaders[CommonTransportKeys.IPAddress] as IPAddress;
CallContext.SetData("ClientIPAddress", ip);
var connectionId = (Int64)requestHeaders[CommonTransportKeys.ConnectionId];
CallContext.SetData("ClientConnectionId", connectionId);
if (_next != null)
{
var spres = _next.ProcessMessage (sinkStack,requestMsg, requestHeaders,requestStream,out responseMsg,out responseHeaders,out responseStream);
return spres;
}
else
{
responseMsg=null;
responseHeaders=null;
responseStream=null;
return new ServerProcessing();
}
}
开发者ID:WinShooter,项目名称:WinShooter-Legacy,代码行数:28,代码来源:CustomSoapServerFormatterSinkProvider.cs
示例7: ProcessMessage
public ServerProcessing ProcessMessage (IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
IMessage call;
MessageType mtype = (Ice.MessageType) requestHeaders["__iceMessageType"];
bool isBatched = (mtype == Ice.MessageType.BatchRequest);
try {
if (requestMsg == null) {
requestMsg = IceChannelUtils.ProtocolRequestToMessage (requestStream, isBatched);
} else {
call = requestMsg;
}
Trace.WriteLine ("IceServerFormatterSink: passing upstream");
_next.ProcessMessage (sinkStack, requestMsg, requestHeaders, null,
out responseMsg, out responseHeaders, out responseStream);
Trace.WriteLine ("IceServerFormatterSink: returned");
responseStream = new MemoryStream();
IceChannelUtils.MessageToProtocolReply (requestMsg, responseMsg, responseStream);
} catch (Exception e) {
Console.WriteLine (e.ToString());
throw e;
}
return ServerProcessing.Complete;
}
开发者ID:emtees,项目名称:old-code,代码行数:32,代码来源:IceServerFormatterSink.cs
示例8: ProcessMessage
public ServerProcessing ProcessMessage (IServerChannelSinkStack sinkStack, IMessage requestMsg,
ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg,
out ITransportHeaders responseHeaders, out Stream responseStream)
{
//we know we never call this
throw new NotSupportedException ();
}
开发者ID:nlhepler,项目名称:mono,代码行数:7,代码来源:HttpServerTransportSink.cs
示例9: ProcessMessage
public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMessage, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMessage, out ITransportHeaders responseHeaders, out Stream responseStream)
{
requestStream = Zip.Decompress(requestStream);
sinkStack.Push(this, null);
ServerProcessing processing = this.m_NextSink.ProcessMessage(sinkStack, requestMessage, requestHeaders, requestStream, out responseMessage, out responseHeaders, out responseStream);
responseStream = Zip.Compress(responseStream);
return processing;
}
开发者ID:bmadarasz,项目名称:ndihelpdesk,代码行数:8,代码来源:ZipServerSink.cs
示例10: DispatchMessage
public static ServerProcessing DispatchMessage(IServerChannelSinkStack sinkStack, System.Runtime.Remoting.Messaging.IMessage msg, out System.Runtime.Remoting.Messaging.IMessage replyMsg)
{
Contract.Ensures(((System.Runtime.Remoting.Channels.ServerProcessing)(0)) <= Contract.Result<System.Runtime.Remoting.Channels.ServerProcessing>());
Contract.Ensures(Contract.Result<System.Runtime.Remoting.Channels.ServerProcessing>() <= ((System.Runtime.Remoting.Channels.ServerProcessing)(1)));
replyMsg = default(System.Runtime.Remoting.Messaging.IMessage);
return default(ServerProcessing);
}
开发者ID:asvishnyakov,项目名称:CodeContracts,代码行数:9,代码来源:System.Runtime.Remoting.Channels.ChannelServices.cs
示例11: ProcessMessage
public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream)
{
if(requestMsg is IMethodCallMessage)
{
IMethodCallMessage call = (IMethodCallMessage)requestMsg;
if(!provider.Filter(call.MethodBase))
throw new MemberAccessException("You are not allowed to access this member via remoting!");
}
return next.ProcessMessage(sinkStack, requestMsg, requestHeaders, requestStream, out responseMsg, out responseHeaders, out responseStream);
}
开发者ID:sciaopin,项目名称:bang-sharp,代码行数:10,代码来源:MethodRestrictionServerSink.cs
示例12: ProcessMessage
public ServerProcessing ProcessMessage (IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
// this is the first sink, and SimpleServerChannel does not call it.
throw new NotSupportedException ();
}
开发者ID:nlhepler,项目名称:mono,代码行数:11,代码来源:SimpleServerTransportSink.cs
示例13: ProcessMessage
public ServerProcessing ProcessMessage (IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
// this sink is always first, and this method isn't usued as the entry point
throw new NotSupportedException();
}
开发者ID:emtees,项目名称:old-code,代码行数:11,代码来源:IceServerTransportSink.cs
示例14: ArgumentNullException
public static ServerProcessing DispatchMessage
(IServerChannelSinkStack sinkStack, IMessage msg,
out IMessage replyMsg)
{
if(msg == null)
{
throw new ArgumentNullException("msg");
}
// TODO
replyMsg = null;
return ServerProcessing.Complete;
}
开发者ID:jjenki11,项目名称:blaze-chem-rendering,代码行数:12,代码来源:ChannelServices.cs
示例15: ProcessMessage
public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream)
{
if (this._nextSink != null)
{
object obj1 = requestHeaders["__IPAddress"];
return this._nextSink.ProcessMessage(sinkStack, requestMsg, requestHeaders, requestStream, out responseMsg, out responseHeaders, out responseStream);
}
responseMsg = null;
responseHeaders = null;
responseStream = null;
return ServerProcessing.Complete;
}
开发者ID:lexzh,项目名称:Myproject,代码行数:12,代码来源:ClientIPServerSink.cs
示例16: ProcessMessage
public ServerProcessing ProcessMessage (IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
responseHeaders = null;
responseStream = null;
return ChannelServices.DispatchMessage(sinkStack, requestMsg, out responseMsg);
}
开发者ID:jack-pappas,项目名称:mono,代码行数:13,代码来源:ServerDispatchSink.cs
示例17: BinaryFormatter
ServerProcessing IServerChannelSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream)
{
BinaryFormatter binaryFormatter = new BinaryFormatter();
binaryFormatter.Binder = new GenericsVTSSerializationBinder();
requestMsg = (IMessage)binaryFormatter.Deserialize(requestStream);
requestMsg.Properties["__Uri"] = requestHeaders["__RequestUri"];
next.ProcessMessage(sinkStack, requestMsg, null, null, out responseMsg, out responseHeaders, out responseStream);
responseHeaders = new TransportHeaders();
responseStream = new MemoryStream();
binaryFormatter.Serialize(responseStream, responseMsg);
responseStream.Position = 0;
return ServerProcessing.Complete;
}
开发者ID:tian1ll1,项目名称:WPF_Examples,代码行数:16,代码来源:GenericsVTSSBSinkProvider.cs
示例18: ProcessMessage
public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream)
{
IPAddress address = requestHeaders["__IPAddress"] as IPAddress;
Console.Write("Process message from {0} ... ", address);
if (!this.MatchIPAddress(address) ^ this.m_IsAccept)
{
TraceInfoEvent.Raise(string.Format("{0} is accepted by IPFilterChannelSink.", address));
Console.WriteLine("accepted");
return this.m_NextSink.ProcessMessage(sinkStack, requestMsg, requestHeaders, requestStream, out responseMsg, out responseHeaders, out responseStream);
}
TraceInfoEvent.Raise(string.Format("{0} is rejected by IPFilterChannelSink.", address));
responseHeaders = new TransportHeaders();
responseMsg = null;
responseStream = null;
return ServerProcessing.Complete;
}
开发者ID:bmadarasz,项目名称:ndihelpdesk,代码行数:16,代码来源:IPFilterChannelSink.cs
示例19: ProcessMessage
public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMessage, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMessage, out ITransportHeaders responseHeaders, out Stream responseStream)
{
if (this.m_NextSink != null)
{
LogicalCallContext context = (LogicalCallContext) requestMessage.Properties["__CallContext"];
if ((context != null) && (context.GetData("PrincipalContextData") != null))
{
PrincipalContextData data = (PrincipalContextData) context.GetData("PrincipalContextData");
Thread.CurrentPrincipal = data.Principal;
}
return this.m_NextSink.ProcessMessage(sinkStack, requestMessage, requestHeaders, requestStream, out responseMessage, out responseHeaders, out responseStream);
}
responseMessage = null;
responseHeaders = null;
responseStream = null;
return ServerProcessing.Complete;
}
开发者ID:bmadarasz,项目名称:ndihelpdesk,代码行数:17,代码来源:PrincipalServerSink.cs
示例20: ProcessMessage
public ServerProcessing ProcessMessage(
IServerChannelSinkStack sinkStack,
IMessage requestMsg,
ITransportHeaders requestHeaders,
Stream requestStream,
out IMessage responseMsg,
out ITransportHeaders responseHeaders,
out Stream responseStream)
{
try
{
if (_next != null)
{
ip = (IPAddress)requestHeaders[CommonTransportKeys.IPAddress];
if (ip != null && (ip.ToString().Trim() == "127.0.0.1" || CheckAuthorizedIP(ip.ToString())))
{
Common.CurrentStatus(ip.ToString().Trim());
ServerProcessing spres = _next.ProcessMessage(sinkStack, requestMsg, requestHeaders, requestStream, out responseMsg, out responseHeaders, out responseStream);
return spres;
}
else
{
Common.Log("Unauthorized Remoting IP: " + ip.ToString().Trim());
responseMsg = null;
responseHeaders = null;
responseStream = null;
return new ServerProcessing();
}
}
else
{
responseMsg = null;
responseHeaders = null;
responseStream = null;
return new ServerProcessing();
}
}
catch (Exception err)
{
Common.Log(err);
responseMsg = null;
responseHeaders = null;
responseStream = null;
return new ServerProcessing();
}
}
开发者ID:thetazhou,项目名称:StockTrading,代码行数:46,代码来源:RemotingProvider.cs
注:本文中的IServerChannelSinkStack类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论