- すべての実装されたインタフェース:
- Closeable,- AutoCloseable,- Channel,- InterruptibleChannel
 このクラスのopenメソッドを呼び出すと、SCTPServerChannelが作成されます。 新しく作成されたSCTPサーバー・チャネルはオープンですが、未バインドです。 バインドされていないチャネルのacceptメソッドを呼び出そうとすると、NotYetBoundExceptionがスローされます。 SCTPサーバー・チャネルは、このクラスによって定義されるbindメソッドの1つを呼び出すことによってバインドできます。 
 
 ソケット・オプションはsetOptionメソッドを使用して構成されます。 SCTPサーバー・ソケット・チャネルでは次のオプションがサポートされます。 
 
追加(実装固有)のオプションをサポートできる場合もあります。
オプション名 説明 SCTP_INIT_MAXSTREAMSアソシエーションの初期化中にローカル・エンドポイントで要求されたストリームの最大数 
supportedOptionsメソッドを呼び出すと、サポートされているオプションのリストが取得されます。 
 SCTPサーバー・チャネルは、複数の並行スレッドで安全に使用できます。
- 導入されたバージョン:
- 1.7
- 
コンストラクタのサマリーコンストラクタ
- 
メソッドのサマリー修飾子と型メソッド説明abstract SctpChannelaccept()このチャネルのソケット上のアソシエーションを受け入れます。final SctpServerChannelbind(SocketAddress local) チャネルのソケットをローカル・アドレスにバインドし、アソシエーションを待機するようソケットを構成します。abstract SctpServerChannelbind(SocketAddress local, int backlog) チャネルのソケットをローカル・アドレスにバインドし、アソシエーションを待機するようソケットを構成します。abstract SctpServerChannelbindAddress(InetAddress address) 指定されたアドレスをチャネルのソケットにバインドされているアドレスに追加します。abstract Set<SocketAddress> このチャネルのソケットがバインドされているすべてのソケット・アドレスを返します。abstract <T> TgetOption(SctpSocketOption<T> name) ソケット・オプションの値を返します。static SctpServerChannelopen()SCTPサーバー・チャネルを開きます。abstract <T> SctpServerChannelsetOption(SctpSocketOption<T> name, T value) ソケット・オプションの値を設定します。abstract Set<SctpSocketOption<?>> このチャネルがサポートするソケット・オプションのセットを返します。abstract SctpServerChannelunbindAddress(InetAddress address) 指定されたアドレスをチャネルのソケットにバインドされているアドレスから削除します。final intvalidOps()このチャネルのサポートされている操作を識別する操作セットを返します。クラスjava.nio.channels.spi.AbstractSelectableChannelで宣言されたメソッドblockingLock, configureBlocking, implCloseChannel, implCloseSelectableChannel, implConfigureBlocking, isBlocking, isRegistered, keyFor, provider, registerクラスjava.nio.channels.SelectableChannelで宣言されたメソッドregisterクラスjava.nio.channels.spi.AbstractInterruptibleChannelで宣言されたメソッドbegin, close, end, isOpen
- 
コンストラクタの詳細- 
SctpServerChannelprotected SctpServerChannel(SelectorProvider provider) このクラスの新しいインスタンスを初期化します。- パラメータ:
- provider- このチャネルのセレクタ・プロバイダ
 
 
- 
- 
メソッドの詳細- 
openpublic static SctpServerChannel open() throws IOExceptionSCTPサーバー・チャネルを開きます。新しいチャネルのソケットは、初期状態では未バインドです。ソケットの bindメソッドの1つを使って特定のアドレスにバインドしないと、アソシエーションは受け付けられません。- 戻り値:
- 新しいSCTPサーバー・チャネル
- 例外:
- UnsupportedOperationException- SCTPプロトコルがサポートされていない場合
- IOException- 入出力エラーが発生した場合
 
- 
acceptpublic abstract SctpChannel accept() throws IOExceptionこのチャネルのソケット上のアソシエーションを受け入れます。このチャネルが非ブロック・モードの場合、保留されているアソシエーションがなければ、このメソッドはただちに nullを返します。 それ以外の場合、新しいアソシエーションが利用可能になるか、入出力エラーが発生するまで無期限にブロックされます。このメソッドによって返される SCTPChannelは、このチャネルがブロック・モードであってもそうでなくてもブロック・モードになります。セキュリティ・マネージャがインストールされている場合、このメソッドは新しい各アソシエーションについてアソシエーションのリモート・ピアのアドレスおよびポート番号がセキュリティ・マネージャの checkAcceptメソッドによって許可されていることを確認します。- 戻り値:
- 新しいアソシエーションのSCTPチャネル。このチャネルが非ブロック・モードで、受け付け可能なアソシエーションが存在しない場合はnull
- 例外:
- ClosedChannelException- このチャネルがクローズしている場合
- AsynchronousCloseException- 受け付け操作の進行中に、別のスレッドによってこのチャネルがクローズされた場合
- ClosedByInterruptException- 受け付け操作の進行中に、現在のスレッドに対して別のスレッドから割込みがあったためにチャネルがクローズし、現在のスレッドの割込みステータスが設定された場合
- NotYetBoundException- このチャネルのソケットが未バインドの場合
- SecurityException- セキュリティ・マネージャがインストールされていて、新しいアソシエーションのリモート・ピアへのアクセスが許可されていない場合
- IOException- その他の入出力エラーが発生した場合
 
- 
bindpublic final SctpServerChannel bind(SocketAddress local) throws IOException チャネルのソケットをローカル・アドレスにバインドし、アソシエーションを待機するようソケットを構成します。このメソッドの呼出しは、式を評価することと同様に動作します。 bind(local, 0); - パラメータ:
- local- ソケットのバインド先のローカル・アドレス、または自動的に割り当てられるソケット・アドレスにソケットをバインドする場合は- null
- 戻り値:
- このチャネル
- 例外:
- ClosedChannelException- このチャネルがクローズしている場合
- AlreadyBoundException- このチャネルがすでにバインドされている場合
- UnsupportedAddressTypeException- 指定されたアドレスのタイプがサポート対象外の場合
- SecurityException- セキュリティ・マネージャがインストールされていて、- checkListenメソッドが操作を拒否した場合
- IOException- その他の入出力エラーが発生した場合
 
- 
bindpublic abstract SctpServerChannel bind(SocketAddress local, int backlog) throws IOException チャネルのソケットをローカル・アドレスにバインドし、アソシエーションを待機するようソケットを構成します。このメソッドは、ソケットとローカル・アドレスとの間の関係を確立するために使用されます。 関係が確立されると、ソケットはチャネルが閉じられるまでバインドされたままになります。 この関係は unbindAddressによって削除される可能性があるため、必ずしもアドレスlocalとの関係であるとはかぎりませんが、このメソッドの呼出しが正常に完了すれば、チャネルのソケットにバインドされたローカル・アドレスが必ず1つ以上存在します。チャネルのソケットが(自動的に割り当てられない)特定のアドレスに正常にバインドされると、追加のアドレスを bindAddressを使用してバインドしたり、unbindAddressを使用して削除したりできます。backlogパラメータは、ソケットの保留されているアソシエーションの最大数です。 正確なセマンティックスは実装に固有です。 実装によっては、特定の最大長が規定されていたり、パラメータが無視されたりする場合もあります。 backlogパラメータの値が 0または負の値の場合は、実装固有のデフォルトが使用されます。- パラメータ:
- local- ソケットのバインド先のローカル・アドレス、または自動的に割り当てられるソケット・アドレスにソケットをバインドする場合は- null
- backlog- 保留中の関連付けの最大数
- 戻り値:
- このチャネル
- 例外:
- ClosedChannelException- このチャネルがクローズしている場合
- AlreadyBoundException- このチャネルがすでにバインドされている場合
- UnsupportedAddressTypeException- 指定されたアドレスのタイプがサポート対象外の場合
- SecurityException- セキュリティ・マネージャがインストールされていて、- checkListenメソッドが操作を拒否した場合
- IOException- その他の入出力エラーが発生した場合
 
- 
bindAddresspublic abstract SctpServerChannel bindAddress(InetAddress address) throws IOException 指定されたアドレスをチャネルのソケットにバインドされているアドレスに追加します。指定されたアドレスは、 ワイルドカード・アドレスであってはいけません。 このメソッドを呼び出す前に、まずbindを使用してチャネルをバインドする必要があります。そうしないと、NotYetBoundExceptionがスローされます。bindメソッドは、引数としてSocketAddressを取ります。通常は、アドレスに加えてポート番号も含まれます。 チャネルの存続期間内はSCTPポート番号は同じままであるため、その後、このメソッドを使用してバインドされたアドレスにはアドレスのみが含まれます。このメソッドが正常に完了したあとに受け付けられる新しいアソシエーションでは、指定されたアドレスと関連付けされます。 - パラメータ:
- address- ソケットにバインドされたアドレスに追加されるアドレス
- 戻り値:
- このチャネル
- 例外:
- ClosedChannelException- このチャネルがクローズしている場合
- NotYetBoundException- このチャネルがまだバインドされていない場合
- AlreadyBoundException- このチャネルがすでに指定されたアドレスにバインドされている場合
- IllegalArgumentException- アドレスが- nullまたは- wildcardアドレスの場合
- IOException- その他の入出力エラーが発生した場合
 
- 
unbindAddresspublic abstract SctpServerChannel unbindAddress(InetAddress address) throws IOException 指定されたアドレスをチャネルのソケットにバインドされているアドレスから削除します。指定されたアドレスは、 ワイルドカード・アドレスであってはいけません。 このメソッドを呼び出す前に、まずbindを使用してチャネルをバインドする必要があります。そうしないと、NotYetBoundExceptionがスローされます。 バインドされたアドレスの1つとしてaddressが含まれないチャネルまたはバインドされているローカル・アドレスが1つしかないチャネルでこのメソッドが呼び出された場合はIllegalUnbindExceptionがスローされます。bindを使用してチャネルのソケットがバインドされる初期アドレスは、チャネルのソケットにバインドされたアドレスから削除される可能性があります。このメソッドが正常に完了したあとに受け付けられる新しいアソシエーションでは、指定されたアドレスと関連付けされません。 - パラメータ:
- address- ソケットにバインドされたアドレスから削除されるアドレス
- 戻り値:
- このチャネル
- 例外:
- ClosedChannelException- このチャネルがクローズしている場合
- NotYetBoundException- このチャネルがまだバインドされていない場合
- IllegalArgumentException- アドレスが- nullまたは- wildcardアドレスの場合
- IllegalUnbindException- 実装でリスニング・ソケットからのアドレスの削除をサポートしない場合、- addressはチャネルのソケットにバインドされません。それ以外の場合、チャネルにはバインドされたアドレスが1つのみあります
- IOException- その他の入出力エラーが発生した場合
 
- 
getAllLocalAddressespublic abstract Set<SocketAddress> getAllLocalAddresses() throws IOExceptionこのチャネルのソケットがバインドされているすべてのソケット・アドレスを返します。- 戻り値:
- このチャネルのソケットがバインドされているすべてのソケット・アドレス、チャネルのソケットがバインドされていない場合は空のSet
- 例外:
- ClosedChannelException- チャネルがクローズしている場合
- IOException- 入出力エラーが発生した場合
 
- 
getOptionpublic abstract <T> T getOption(SctpSocketOption<T> name) throws IOException ソケット・オプションの値を返します。- 型パラメータ:
- T- ソケット・オプション値のタイプ
- パラメータ:
- name- ソケット・オプション
- 戻り値:
- ソケット・オプションの値。 一部のソケット・オプションに対しては、nullの値が有効な値である場合があります。
- 例外:
- UnsupportedOperationException- チャネルがソケット・オプションをサポートしていない場合
- ClosedChannelException- このチャネルがクローズしている場合
- IOException- 入出力エラーが発生した場合
- 関連項目:
 
- 
setOptionpublic abstract <T> SctpServerChannel setOption(SctpSocketOption<T> name, T value) throws IOException ソケット・オプションの値を設定します。- 型パラメータ:
- T- ソケット・オプション値のタイプ
- パラメータ:
- name- ソケット・オプション
- value- ソケット・オプションの値。 一部のソケット・オプションに対しては、- nullの値が有効な値である場合があります。
- 戻り値:
- このチャネル
- 例外:
- UnsupportedOperationException- チャネルがソケット・オプションをサポートしていない場合
- IllegalArgumentException- 値がこのソケット・オプションに対して有効な値でない場合
- ClosedChannelException- このチャネルがクローズしている場合
- IOException- 入出力エラーが発生した場合
- 関連項目:
 
- 
supportedOptionspublic abstract Set<SctpSocketOption<?>> supportedOptions()このチャネルがサポートするソケット・オプションのセットを返します。このメソッドは、チャネルが閉じられたあとでも引き続きオプションのセットを返します。 - 戻り値:
- このチャネルでサポートされるソケット・オプションのセット
 
- 
validOpspublic final int validOps()このチャネルのサポートされている操作を識別する操作セットを返します。SCTPサーバー・チャネルは新しいアソシエーションの受け入れのみをサポートしているため、このメソッドは SelectionKey.OP_ACCEPTを返します。- 定義:
- validOps、クラス- SelectableChannel
- 戻り値:
- 有効な操作セット
 
 
-