org.jruby.Ruby.getIOError()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(3.4k)|赞(0)|评价(0)|浏览(105)

本文整理了Java中org.jruby.Ruby.getIOError方法的一些代码示例,展示了Ruby.getIOError的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Ruby.getIOError方法的具体详情如下:
包路径:org.jruby.Ruby
类名称:Ruby
方法名:getIOError

Ruby.getIOError介绍

暂无

代码示例

代码示例来源:origin: org.jruby/jruby-complete

public RaiseException newIOError(String message) {
  return newRaiseException(getIOError(), message);
}

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby

public RaiseException newIOError(String message) {
  return newRaiseException(getIOError(), message);
}

代码示例来源:origin: org.jruby/jruby-core

public RaiseException newIOError(String message) {
  return newRaiseException(getIOError(), message);
}

代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby

public RaiseException newIOError(String message) {
  return newRaiseException(getIOError(), message);
}

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby

public RaiseException newIOErrorFromException(IOException ioe) {
  if (ioe instanceof ClosedChannelException) {
    throw newErrnoEBADFError();
  }
  // TODO: this is kinda gross
  if(ioe.getMessage() != null) {
    if (ioe.getMessage().equals("Broken pipe")) {
      throw newErrnoEPIPEError();
    } else if (ioe.getMessage().equals("Connection reset by peer") ||
        (Platform.IS_WINDOWS && ioe.getMessage().contains("connection was aborted"))) {
      throw newErrnoECONNRESETError();
    }
    return newRaiseException(getIOError(), ioe.getMessage());
  } else {
    return newRaiseException(getIOError(), "IO Error");
  }
}

代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby

public RaiseException newIOErrorFromException(IOException ioe) {
  if (ioe instanceof ClosedChannelException) {
    throw newErrnoEBADFError();
  }
  // TODO: this is kinda gross
  if(ioe.getMessage() != null) {
    if (ioe.getMessage().equals("Broken pipe")) {
      throw newErrnoEPIPEError();
    } else if (ioe.getMessage().equals("Connection reset by peer") ||
        (Platform.IS_WINDOWS && ioe.getMessage().contains("connection was aborted"))) {
      throw newErrnoECONNRESETError();
    }
    return newRaiseException(getIOError(), ioe.getMessage());
  } else {
    return newRaiseException(getIOError(), "IO Error");
  }
}

代码示例来源:origin: org.jruby/jruby-core

/**
 * Fire an IOError in all threads blocking on this IO object
 */
public void interruptBlockingThreads(ThreadContext context) {
  Set<RubyThread> blockingThreads = this.blockingThreads;
  if (blockingThreads == null) {
    return;
  }
  synchronized (blockingThreads) {
    for (RubyThread thread : blockingThreads) {
      // If it's the current thread, ignore it since we're the one doing the interrupting
      if (thread == context.getThread()) continue;
      // raise will also wake the thread from selection
      RubyException exception = (RubyException) runtime.getIOError().newInstance(context, runtime.newString("stream closed in another thread"), Block.NULL_BLOCK);
      thread.raise(Helpers.arrayOf(exception), Block.NULL_BLOCK);
    }
  }
}

代码示例来源:origin: org.jruby/jruby-complete

/**
 * Fire an IOError in all threads blocking on this IO object
 */
public void interruptBlockingThreads(ThreadContext context) {
  Set<RubyThread> blockingThreads = this.blockingThreads;
  if (blockingThreads == null) {
    return;
  }
  synchronized (blockingThreads) {
    for (RubyThread thread : blockingThreads) {
      // If it's the current thread, ignore it since we're the one doing the interrupting
      if (thread == context.getThread()) continue;
      // raise will also wake the thread from selection
      RubyException exception = (RubyException) runtime.getIOError().newInstance(context, runtime.newString("stream closed in another thread"), Block.NULL_BLOCK);
      thread.raise(Helpers.arrayOf(exception), Block.NULL_BLOCK);
    }
  }
}

相关文章

微信公众号

最新文章

更多

Ruby类方法