IChannelReceiverHook インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
該当インターフェイスを実装しているチャネルを外部リスナー サービスにフックする必要があることを示します。
public interface class IChannelReceiverHook
public interface IChannelReceiverHook
[System.Runtime.InteropServices.ComVisible(true)]
public interface IChannelReceiverHook
type IChannelReceiverHook = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type IChannelReceiverHook = interface
Public Interface IChannelReceiverHook
- 派生
- 属性
例
// Implementation of 'IChannelReceiverHook' interface.
public ref class MyCustomChannel: public IChannelReceiverHook
{
private:
bool portSet;
public:
// Constructor for MyCustomChannel.
MyCustomChannel( int /*port*/ )
{
MyChannelScheme = "http";
portSet = true;
}
// Constructor for MyCustomChannel.
MyCustomChannel()
{
MyChannelScheme = "http";
portSet = false;
}
property bool WantsToListen
{
[System::Security::Permissions::SecurityPermissionAttribute
(System::Security::Permissions::SecurityAction::LinkDemand,
Flags=System::Security::Permissions::SecurityPermissionFlag::Infrastructure)]
virtual bool get()
{
if ( portSet )
{
return false;
}
else
{
return true;
}
}
}
private:
String^ MyChannelScheme;
public:
property String^ ChannelScheme
{
[System::Security::Permissions::SecurityPermissionAttribute
(System::Security::Permissions::SecurityAction::LinkDemand,
Flags=System::Security::Permissions::SecurityPermissionFlag::Infrastructure)]
virtual String^ get()
{
return MyChannelScheme;
}
}
property IServerChannelSink^ ChannelSinkChain
{
[System::Security::Permissions::SecurityPermissionAttribute
(System::Security::Permissions::SecurityAction::LinkDemand,
Flags=System::Security::Permissions::SecurityPermissionFlag::Infrastructure)]
virtual IServerChannelSink^ get()
{
// Null implementation.
return nullptr;
}
}
[System::Security::Permissions::SecurityPermissionAttribute
(System::Security::Permissions::SecurityAction::LinkDemand,
Flags=System::Security::Permissions::SecurityPermissionFlag::Infrastructure)]
virtual void AddHookChannelUri( String^ /*channelUri*/ )
{
// Null implementation.
}
};
// Implementation of 'IChannelReceiverHook' interface.
public class MyCustomChannel : IChannelReceiverHook
{
private bool portSet;
// Constructor for MyCustomChannel.
public MyCustomChannel(int port)
{
portSet = true;
}
// Constructor for MyCustomChannel.
public MyCustomChannel()
{
portSet = false;
}
public bool WantsToListen
{
get
{
if (portSet)
{
return false;
}
else
{
return true;
}
}
}
private string MyChannelScheme = "http";
public string ChannelScheme
{
get
{
return MyChannelScheme;
}
}
public IServerChannelSink ChannelSinkChain
{
get
{
// Null implementation.
return null;
}
}
public void AddHookChannelUri(string channelUri)
{
// Null implementation.
}
}
' Implementation of 'IChannelReceiverHook' interface.
<PermissionSet(SecurityAction.Demand, Name:="FullTrust")> _
Public Class MyCustomChannel
Implements IChannelReceiverHook
Private portSet As Boolean
' Constructor for MyCustomChannel.
Public Sub New(ByVal port As Integer)
portSet = True
End Sub
' Constructor for MyCustomChannel.
Public Sub New()
portSet = False
End Sub
Public ReadOnly Property WantsToListen() As Boolean Implements IChannelReceiverHook.WantsToListen
Get
If portSet Then
Return False
Else
Return True
End If
End Get
End Property
Private MyChannelScheme As String = "http"
Public ReadOnly Property ChannelScheme() As String Implements IChannelReceiverHook.ChannelScheme
Get
Return MyChannelScheme
End Get
End Property
Public ReadOnly Property ChannelSinkChain() As IServerChannelSink _
Implements IChannelReceiverHook.ChannelSinkChain
Get
' Null implementation.
Return Nothing
End Get
End Property
Public Sub AddHookChannelUri(ByVal channelUri As String) _
Implements IChannelReceiverHook.AddHookChannelUri
' Null implementation.
End Sub
End Class
プロパティ
ChannelScheme |
フックするリスナーの種類を取得します。 |
ChannelSinkChain |
現在のチャネルが使用しているチャネル シンク チェインを取得します。 |
WantsToListen |
IChannelReceiverHook を外部リスナー サービスにフックする必要があるかどうかを示す Boolean 値を取得します。 |
メソッド
AddHookChannelUri(String) |
チャネル フックが待機する URI を追加します。 |
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET