FOREIGN MODULE java_nio_channels_spi; IMPORT sun_nio_ch := "sun.nio.ch", java_lang := "java.lang", java_nio_channels := "java.nio.channels", java_util_concurrent_atomic := "java.util.concurrent.atomic", java_util := "java.util", java_security := "java.security"; TYPE AbstractInterruptibleChannel* = POINTER TO ABSTRACT RECORD (java_lang.Object + java_nio_channels.Channel + java_nio_channels.InterruptibleChannel) (* Typebound Procedures *) STATIC PROCEDURE Init!() : AbstractInterruptibleChannel,CONSTRUCTOR; END; AbstractSelectableChannel* = POINTER TO ABSTRACT RECORD (java_nio_channels.SelectableChannel) (* Typebound Procedures *) STATIC PROCEDURE Init!(p0 : SelectorProvider) : AbstractSelectableChannel,CONSTRUCTOR; END; AbstractSelectionKey* = POINTER TO ABSTRACT RECORD (java_nio_channels.SelectionKey) (* Typebound Procedures *) STATIC PROCEDURE Init!() : AbstractSelectionKey,CONSTRUCTOR; END; AbstractSelector* = POINTER TO ABSTRACT RECORD (java_nio_channels.Selector) (* Typebound Procedures *) STATIC PROCEDURE Init!(p0 : SelectorProvider) : AbstractSelector,CONSTRUCTOR; END; SelectorProvider* = POINTER TO ABSTRACT RECORD (java_lang.Object) (* Typebound Procedures *) STATIC PROCEDURE Init!() : SelectorProvider,CONSTRUCTOR; PROCEDURE provider*() : SelectorProvider; END; PROCEDURE (self:AbstractInterruptibleChannel) begin!(),NEW; PROCEDURE (self:AbstractInterruptibleChannel) close*(),NEW; PROCEDURE (self:AbstractInterruptibleChannel) end!(p0 : BOOLEAN),NEW; PROCEDURE (self:AbstractInterruptibleChannel) implCloseChannel!(),NEW,ABSTRACT; PROCEDURE (self:AbstractInterruptibleChannel) isOpen*() : BOOLEAN,NEW; PROCEDURE (self:AbstractSelectableChannel) blockingLock*() : java_lang.Object; PROCEDURE (self:AbstractSelectableChannel) configureBlocking*(p0 : BOOLEAN) : java_nio_channels.SelectableChannel; PROCEDURE (self:AbstractSelectableChannel) implCloseChannel!(); PROCEDURE (self:AbstractSelectableChannel) implCloseSelectableChannel!(),NEW,ABSTRACT; PROCEDURE (self:AbstractSelectableChannel) implConfigureBlocking!(p0 : BOOLEAN),NEW,ABSTRACT; PROCEDURE (self:AbstractSelectableChannel) isBlocking*() : BOOLEAN; PROCEDURE (self:AbstractSelectableChannel) isRegistered*() : BOOLEAN; PROCEDURE (self:AbstractSelectableChannel) keyFor*(p0 : java_nio_channels.Selector) : java_nio_channels.SelectionKey; PROCEDURE (self:AbstractSelectableChannel) provider*() : SelectorProvider; PROCEDURE (self:AbstractSelectableChannel) register*(p0 : java_nio_channels.Selector; p1 : INTEGER; p2 : java_lang.Object) : java_nio_channels.SelectionKey; PROCEDURE (self:AbstractSelectionKey) cancel*(); PROCEDURE (self:AbstractSelectionKey) isValid*() : BOOLEAN; PROCEDURE (self:AbstractSelector) begin!(),NEW; PROCEDURE (self:AbstractSelector) cancelledKeys!() : java_util.Set,NEW; PROCEDURE (self:AbstractSelector) close*(); PROCEDURE (self:AbstractSelector) deregister!(p0 : AbstractSelectionKey),NEW; PROCEDURE (self:AbstractSelector) end!(),NEW; PROCEDURE (self:AbstractSelector) implCloseSelector!(),NEW,ABSTRACT; PROCEDURE (self:AbstractSelector) isOpen*() : BOOLEAN; PROCEDURE (self:AbstractSelector) provider*() : SelectorProvider; PROCEDURE (self:AbstractSelector) register!(p0 : AbstractSelectableChannel; p1 : INTEGER; p2 : java_lang.Object) : java_nio_channels.SelectionKey,NEW,ABSTRACT; PROCEDURE (self:SelectorProvider) inheritedChannel*() : java_nio_channels.Channel,NEW,EXTENSIBLE; PROCEDURE (self:SelectorProvider) openDatagramChannel*() : java_nio_channels.DatagramChannel,NEW,ABSTRACT; PROCEDURE (self:SelectorProvider) openPipe*() : java_nio_channels.Pipe,NEW,ABSTRACT; PROCEDURE (self:SelectorProvider) openSelector*() : AbstractSelector,NEW,ABSTRACT; PROCEDURE (self:SelectorProvider) openServerSocketChannel*() : java_nio_channels.ServerSocketChannel,NEW,ABSTRACT; PROCEDURE (self:SelectorProvider) openSocketChannel*() : java_nio_channels.SocketChannel,NEW,ABSTRACT; END java_nio_channels_spi.