private Channel getOpenChannel() { return getOpenFileChecked().channel(); }
private Channel getOpenChannel() { return getOpenFileChecked().channel(); }
private IRubyObject closeHalf(ThreadContext context, int closeHalf) { OpenFile fptr; int otherHalf = closeHalf == OpenFile.READABLE ? OpenFile.WRITABLE : OpenFile.READABLE; fptr = getOpenFileChecked(); if ((fptr.getMode() & otherHalf) == 0) { // shutdown fully return rbIoClose(context); } // shutdown half int how = closeHalf == OpenFile.READABLE ? 0 : 1; shutdownInternal(context, fptr, how); return context.nil; }
private IRubyObject closeHalf(ThreadContext context, int closeHalf) { OpenFile fptr; int otherHalf = closeHalf == OpenFile.READABLE ? OpenFile.WRITABLE : OpenFile.READABLE; fptr = getOpenFileChecked(); if ((fptr.getMode() & otherHalf) == 0) { // shutdown fully return rbIoClose(context); } // shutdown half int how = closeHalf == OpenFile.READABLE ? 0 : 1; shutdownInternal(context, fptr, how); return context.nil; }
private Channel getOpenChannel() throws BadDescriptorException { return getOpenFileChecked().getMainStreamSafe().getDescriptor().getChannel(); }
private Channel getOpenChannel() throws BadDescriptorException { return getOpenFileChecked().getMainStreamSafe().getDescriptor().getChannel(); }
@JRubyMethod(optional = 1) public IRubyObject shutdown(ThreadContext context, IRubyObject[] args) { int how = 2; if (args.length > 0) { String howString = null; if (args[0] instanceof RubyString || args[0] instanceof RubySymbol) { howString = args[0].asJavaString(); } else { Ruby runtime = context.runtime; IRubyObject maybeString = TypeConverter.checkStringType(runtime, args[0]); if (!maybeString.isNil()) howString = maybeString.toString(); } if (howString != null) { if (howString.equals("RD") || howString.equals("SHUT_RD")) { how = 0; } else if (howString.equals("WR") || howString.equals("SHUT_WR")) { how = 1; } else if (howString.equals("RDWR") || howString.equals("SHUT_RDWR")) { how = 2; } else { throw SocketUtils.sockerr(context.runtime, "`how' should be either :SHUT_RD, :SHUT_WR, :SHUT_RDWR"); } } else { how = RubyNumeric.fix2int(args[0]); } } OpenFile fptr = getOpenFileChecked(); return shutdownInternal(context, fptr, how); }
@JRubyMethod(optional = 1) public IRubyObject shutdown(ThreadContext context, IRubyObject[] args) { int how = 2; if (args.length > 0) { String howString = null; if (args[0] instanceof RubyString || args[0] instanceof RubySymbol) { howString = args[0].asJavaString(); } else { Ruby runtime = context.runtime; IRubyObject maybeString = TypeConverter.checkStringType(runtime, args[0]); if (!maybeString.isNil()) howString = maybeString.toString(); } if (howString != null) { if (howString.equals("RD") || howString.equals("SHUT_RD")) { how = 0; } else if (howString.equals("WR") || howString.equals("SHUT_WR")) { how = 1; } else if (howString.equals("RDWR") || howString.equals("SHUT_RDWR")) { how = 2; } else { throw SocketUtils.sockerr(context.runtime, "`how' should be either :SHUT_RD, :SHUT_WR, :SHUT_RDWR"); } } else { how = RubyNumeric.fix2int(args[0]); } } OpenFile fptr = getOpenFileChecked(); return shutdownInternal(context, fptr, how); }