test_class.declarator: wasCalled = new AtomicBoolean()
test_class.modifier: private final
test_class.original_string: private final AtomicBoolean wasCalled = new AtomicBoolean();
test_class.type: AtomicBoolean
test_class.var_name: wasCalled
test_class.declarator: releasableOutputStream
test_class.modifier: private
test_class.original_string: private ReleasableOutputStream releasableOutputStream;
test_class.type: ReleasableOutputStream
test_class.var_name: releasableOutputStream
test_class.declarator: failedReleasableOutputStream
test_class.modifier: private
test_class.original_string: private ReleasableOutputStream failedReleasableOutputStream;
test_class.type: ReleasableOutputStream
test_class.var_name: failedReleasableOutputStream
test_class.file: dataprep-backend-service/src/test/java/org/talend/dataprep/io/ReleasableOutputStreamTest.java
test_class.identifier: ReleasableOutputStreamTest
test_case.body: @Test
      public void failedWrite1() throws Exception {
          // When
          try {
              failedReleasableOutputStream.write(new byte[] { 'a', 'b' });
          } catch (IOException e) {
              // Ignored
          }
  
          // Then
          assertTrue(wasCalled.get());
      }
test_case.class_method_signature: ReleasableOutputStreamTest.failedWrite1()
test_case.full_signature: @Test public void failedWrite1()
test_case.identifier: failedWrite1
test_case.invocations: write assertTrue get
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void failedWrite1()
focal_class.declarator: LOG = LoggerFactory.getLogger(ReleasableOutputStream.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOG = LoggerFactory.getLogger(ReleasableOutputStream.class);
focal_class.type: Logger
focal_class.var_name: LOG
focal_class.declarator: delegate
focal_class.modifier: private final
focal_class.original_string: private final OutputStream delegate;
focal_class.type: OutputStream
focal_class.var_name: delegate
focal_class.declarator: onClose
focal_class.modifier: private final
focal_class.original_string: private final Runnable onClose;
focal_class.type: Runnable
focal_class.var_name: onClose
focal_class.declarator: isClosed
focal_class.modifier: private
focal_class.original_string: private boolean isClosed;
focal_class.type: boolean
focal_class.var_name: isClosed
focal_class.file: dataprep-backend-service/src/main/java/org/talend/dataprep/io/ReleasableOutputStream.java
focal_class.identifier: ReleasableOutputStream
focal_class.class_method_signature: ReleasableOutputStream.ReleasableOutputStream(OutputStream delegate, Runnable onClose)
focal_class.full_signature: public  ReleasableOutputStream(OutputStream delegate, Runnable onClose)
focal_class.identifier: ReleasableOutputStream
focal_class.modifiers: public
focal_class.parameters: (OutputStream delegate, Runnable onClose)
focal_class.signature:  ReleasableOutputStream(OutputStream delegate, Runnable onClose)
focal_class.class_method_signature: ReleasableOutputStream.write(int b)
focal_class.full_signature: @Override public void write(int b)
focal_class.identifier: write
focal_class.modifiers: @Override public
focal_class.parameters: (int b)
focal_class.return: void
focal_class.signature: void write(int b)
focal_class.class_method_signature: ReleasableOutputStream.write(byte[] b)
focal_class.full_signature: @Override public void write(byte[] b)
focal_class.identifier: write
focal_class.modifiers: @Override public
focal_class.parameters: (byte[] b)
focal_class.return: void
focal_class.signature: void write(byte[] b)
focal_class.class_method_signature: ReleasableOutputStream.write(byte[] b, int off, int len)
focal_class.full_signature: @Override public void write(byte[] b, int off, int len)
focal_class.identifier: write
focal_class.modifiers: @Override public
focal_class.parameters: (byte[] b, int off, int len)
focal_class.return: void
focal_class.signature: void write(byte[] b, int off, int len)
focal_class.class_method_signature: ReleasableOutputStream.flush()
focal_class.full_signature: @Override public void flush()
focal_class.identifier: flush
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void flush()
focal_class.class_method_signature: ReleasableOutputStream.close()
focal_class.full_signature: @Override public void close()
focal_class.identifier: close
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void close()
focal_class.class_method_signature: ReleasableOutputStream.safeClose()
focal_class.full_signature: private synchronized void safeClose()
focal_class.identifier: safeClose
focal_class.modifiers: private synchronized
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void safeClose()
focal_class.superclass: extends OutputStream
focal_method.body: @Override
      public void write(int b) throws IOException {
          try {
              delegate.write(b);
          } catch (IOException e) {
              safeClose();
              throw e;
          }
      }
focal_method.class_method_signature: ReleasableOutputStream.write(int b)
focal_method.full_signature: @Override public void write(int b)
focal_method.identifier: write
focal_method.invocations: write safeClose
focal_method.modifiers: @Override public
focal_method.parameters: (int b)
focal_method.return: void
focal_method.signature: void write(int b)