當前位置: 首頁>>代碼示例>>Java>>正文


Java PipedOutputStream.close方法代碼示例

本文整理匯總了Java中java.io.PipedOutputStream.close方法的典型用法代碼示例。如果您正苦於以下問題:Java PipedOutputStream.close方法的具體用法?Java PipedOutputStream.close怎麽用?Java PipedOutputStream.close使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在java.io.PipedOutputStream的用法示例。


在下文中一共展示了PipedOutputStream.close方法的14個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: testTestCommand

import java.io.PipedOutputStream; //導入方法依賴的package包/類
@Test
public void testTestCommand() throws JSchException, IOException {
    JSch jsch = new JSch();
    Session session = jsch.getSession("admin", "localhost", properties.getShell().getPort());
    jsch.addIdentity("src/test/resources/id_rsa");
    Properties config = new Properties();
    config.put("StrictHostKeyChecking", "no");
    session.setConfig(config);
    session.connect();
    ChannelShell channel = (ChannelShell) session.openChannel("shell");
    PipedInputStream pis = new PipedInputStream();
    PipedOutputStream pos = new PipedOutputStream();
    channel.setInputStream(new PipedInputStream(pos));
    channel.setOutputStream(new PipedOutputStream(pis));
    channel.connect();
    pos.write("test run bob\r".getBytes(StandardCharsets.UTF_8));
    pos.flush();
    verifyResponse(pis, "test run bob");
    pis.close();
    pos.close();
    channel.disconnect();
    session.disconnect();
}
 
開發者ID:anand1st,項目名稱:sshd-shell-spring-boot,代碼行數:24,代碼來源:SshdShellAutoConfigurationWithPublicKeyAndBannerImageTest.java

示例2: buildACommand

import java.io.PipedOutputStream; //導入方法依賴的package包/類
@Test
public void buildACommand() throws IOException {
  PipedInputStream pis = new PipedInputStream();
  BufferedInputStream bis = new BufferedInputStream(pis);
  PipedOutputStream pos = new PipedOutputStream(pis);
  RedisOutputStream ros = new RedisOutputStream(pos);

  Protocol.sendCommand(ros, Protocol.Command.GET, "SOMEKEY".getBytes(Protocol.CHARSET));
  ros.flush();
  pos.close();
  String expectedCommand = "*2\r\n$3\r\nGET\r\n$7\r\nSOMEKEY\r\n";

  int b;
  StringBuilder sb = new StringBuilder();
  while ((b = bis.read()) != -1) {
    sb.append((char) b);
  }

  assertEquals(expectedCommand, sb.toString());
}
 
開發者ID:qq1588518,項目名稱:JRediClients,代碼行數:21,代碼來源:ProtocolTest.java

示例3: tupleWriter

import java.io.PipedOutputStream; //導入方法依賴的package包/類
private void tupleWriter(PipedOutputStream pipeOut, Set<String> tuples) throws BiremeException {
  byte[] data = null;

  try {
    Iterator<String> iterator = tuples.iterator();

    while (iterator.hasNext() && !cxt.stop) {
      data = iterator.next().getBytes("UTF-8");
      pipeOut.write(data);
    }

    pipeOut.flush();
  } catch (IOException e) {
    throw new BiremeException("I/O error occurs while write to pipe.", e);
  } finally {
    try {
      pipeOut.close();
    } catch (IOException ignore) {
    }
  }
}
 
開發者ID:HashDataInc,項目名稱:bireme,代碼行數:22,代碼來源:ChangeLoader.java

示例4: checkPrintAllValues

import java.io.PipedOutputStream; //導入方法依賴的package包/類
private static boolean checkPrintAllValues(JMXGet jmx) throws Exception {
  int size = 0; 
  byte[] bytes = null;
  String pattern = "List of all the available keys:";
  PipedOutputStream pipeOut = new PipedOutputStream();
  PipedInputStream pipeIn = new PipedInputStream(pipeOut);
  System.setErr(new PrintStream(pipeOut));
  jmx.printAllValues();
  if ((size = pipeIn.available()) != 0) {
    bytes = new byte[size];
    pipeIn.read(bytes, 0, bytes.length);            
  }
  pipeOut.close();
  pipeIn.close();
  return bytes != null ? new String(bytes).contains(pattern) : false;
}
 
開發者ID:naver,項目名稱:hadoop,代碼行數:17,代碼來源:TestJMXGet.java

示例5: sshCall

import java.io.PipedOutputStream; //導入方法依賴的package包/類
protected void sshCall(String username, String password, SshExecutor executor, String channelType) {
    try {
        JSch jsch = new JSch();
        Session session = jsch.getSession(username, props.getShell().getHost(), props.getShell().getPort());
        session.setPassword(password);
        Properties config = new Properties();
        config.put("StrictHostKeyChecking", "no");
        session.setConfig(config);
        session.connect();
        Channel channel = session.openChannel(channelType);
        PipedInputStream pis = new PipedInputStream();
        PipedOutputStream pos = new PipedOutputStream();
        channel.setInputStream(new PipedInputStream(pos));
        channel.setOutputStream(new PipedOutputStream(pis));
        channel.connect();
        try {
            executor.execute(pis, pos);
        } finally {
            pis.close();
            pos.close();
            channel.disconnect();
            session.disconnect();
        }
    } catch(JSchException | IOException ex) {
        fail(ex.toString());
    }
}
 
開發者ID:anand1st,項目名稱:sshd-shell-spring-boot,代碼行數:28,代碼來源:AbstractSshSupport.java

示例6: checkPrintAllValues

import java.io.PipedOutputStream; //導入方法依賴的package包/類
private static boolean checkPrintAllValues(JMXGet jmx) throws Exception {
  int size = 0; 
  byte[] bytes = null;
  String pattern = "List of all the available keys:";
  PipedOutputStream pipeOut = new PipedOutputStream();
  PipedInputStream pipeIn = new PipedInputStream(pipeOut);
  PrintStream oldErr = System.err;
  System.setErr(new PrintStream(pipeOut));
  try {
    jmx.printAllValues();
    if ((size = pipeIn.available()) != 0) {
      bytes = new byte[size];
      pipeIn.read(bytes, 0, bytes.length);
    }
    pipeOut.close();
    pipeIn.close();
  } finally {
    System.setErr(oldErr);
  }
  return bytes != null ? new String(bytes).contains(pattern) : false;
}
 
開發者ID:aliyun-beta,項目名稱:aliyun-oss-hadoop-fs,代碼行數:22,代碼來源:TestJMXGet.java

示例7: checkOutput

import java.io.PipedOutputStream; //導入方法依賴的package包/類
private void checkOutput(String[] args, String pattern, PrintStream out,
    Class<?> clazz) {       
  ByteArrayOutputStream outBytes = new ByteArrayOutputStream();
  try {
    PipedOutputStream pipeOut = new PipedOutputStream();
    PipedInputStream pipeIn = new PipedInputStream(pipeOut, PIPE_BUFFER_SIZE);
    if (out == System.out) {
      System.setOut(new PrintStream(pipeOut));
    } else if (out == System.err) {
      System.setErr(new PrintStream(pipeOut));
    }

    if (clazz == DelegationTokenFetcher.class) {
      expectDelegationTokenFetcherExit(args);
    } else if (clazz == JMXGet.class) {
      expectJMXGetExit(args);
    } else if (clazz == DFSAdmin.class) {
      expectDfsAdminPrint(args);
    }
    pipeOut.close();
    ByteStreams.copy(pipeIn, outBytes);      
    pipeIn.close();
    assertTrue(new String(outBytes.toByteArray()).contains(pattern));            
  } catch (Exception ex) {
    fail("checkOutput error " + ex);
  }
}
 
開發者ID:naver,項目名稱:hadoop,代碼行數:28,代碼來源:TestTools.java

示例8: integrateLocalisedMessageBundle

import java.io.PipedOutputStream; //導入方法依賴的package包/類
@Override
public void integrateLocalisedMessageBundle(Properties p) {
	// Surely there's a more convenient way of doing this?
	ResourceBundle rb = null;
	try {
		PipedInputStream in_stream = new PipedInputStream();
		PipedOutputStream out_stream = new PipedOutputStream(in_stream);
		p.store(out_stream, "");
		out_stream.close();
		rb = new PropertyResourceBundle(in_stream);
		in_stream.close();
	}
	catch (IOException ioe) {return;}
	integrateLocalisedMessageBundle(rb);
}
 
開發者ID:BiglySoftware,項目名稱:BiglyBT,代碼行數:16,代碼來源:LocaleUtilitiesImpl.java

示例9: checkOutput

import java.io.PipedOutputStream; //導入方法依賴的package包/類
private void checkOutput(String[] args, String pattern, PrintStream out,
    Class<?> clazz) {       
  ByteArrayOutputStream outBytes = new ByteArrayOutputStream();
  PrintStream oldOut = System.out;
  PrintStream oldErr = System.err;
  try {
    PipedOutputStream pipeOut = new PipedOutputStream();
    PipedInputStream pipeIn = new PipedInputStream(pipeOut, PIPE_BUFFER_SIZE);
    if (out == System.out) {
      System.setOut(new PrintStream(pipeOut));
    } else if (out == System.err) {
      System.setErr(new PrintStream(pipeOut));
    }

    if (clazz == DelegationTokenFetcher.class) {
      expectDelegationTokenFetcherExit(args);
    } else if (clazz == JMXGet.class) {
      expectJMXGetExit(args);
    } else if (clazz == DFSAdmin.class) {
      expectDfsAdminPrint(args);
    }
    pipeOut.close();
    ByteStreams.copy(pipeIn, outBytes);      
    pipeIn.close();
    assertTrue(new String(outBytes.toByteArray()).contains(pattern));            
  } catch (Exception ex) {
    fail("checkOutput error " + ex);
  } finally {
    System.setOut(oldOut);
    System.setErr(oldErr);
  }
}
 
開發者ID:aliyun-beta,項目名稱:aliyun-oss-hadoop-fs,代碼行數:33,代碼來源:TestTools.java

示例10: integrateLocalisedMessageBundle

import java.io.PipedOutputStream; //導入方法依賴的package包/類
public void integrateLocalisedMessageBundle(Properties p) {
	// Surely there's a more convenient way of doing this?
	ResourceBundle rb = null;
	try {
		PipedInputStream in_stream = new PipedInputStream();
		PipedOutputStream out_stream = new PipedOutputStream(in_stream);
		p.store(out_stream, "");
		out_stream.close();
		rb = new PropertyResourceBundle(in_stream);
		in_stream.close();
	}
	catch (IOException ioe) {return;}
	integrateLocalisedMessageBundle(rb);
}
 
開發者ID:thangbn,項目名稱:Direct-File-Downloader,代碼行數:15,代碼來源:LocaleUtilitiesImpl.java

示例11: getInputStream

import java.io.PipedOutputStream; //導入方法依賴的package包/類
/**
 * @param length
 *            The length of the stream content.
 * @return An InputStream.
 * @throws IOException
 *             Exception.
 */
private PipedInputStream getInputStream(long length) throws IOException {
    PipedOutputStream outputStream = new PipedOutputStream();
    PipedInputStream inputStream = new PipedInputStream(outputStream);
    for (int i = 0; i < length; i++) {
        outputStream.write(Byte.MIN_VALUE);
    }
    outputStream.flush();
    outputStream.close();
    return inputStream;
}
 
開發者ID:Communote,項目名稱:communote-server,代碼行數:18,代碼來源:IOHelperTest.java

示例12: TarEntrySupplicant

import java.io.PipedOutputStream; //導入方法依賴的package包/類
/**
 * After instantiating a TarEntrySupplicant, the user must either invoke
 * write() or close(), to release system resources on the input
 * File/Stream.
 * <P>
 * <B>WARNING:</B>
 * Do not use this method unless the quantity of available RAM is
 * sufficient to accommodate the specified maxBytes all at one time.
 * This constructor loads all input from the specified InputStream into
 * RAM before anything is written to disk.
 * </P>
 *
 * @param maxBytes This method will fail if more than maxBytes bytes
 *                 are supplied on the specified InputStream.
 *                 As the type of this parameter enforces, the max
 *                 size you can request is 2GB.
 */
public TarEntrySupplicant(String path, InputStream origStream,
                          int maxBytes, char typeFlag,
                          TarFileOutputStream tarStream)
        throws IOException, TarMalformatException {

    /*
     * If you modify this, make sure to not intermix reading/writing of
     * the PipedInputStream and the PipedOutputStream, or you could
     * cause dead-lock.  Everything is safe if you close the
     * PipedOutputStream before reading the PipedInputStream.
     */
    this(path, typeFlag, tarStream, 0100000000000L);

    if (maxBytes < 1) {
        throw new IllegalArgumentException(RB.read_lt_1.getString());
    }

    int               i;
    PipedOutputStream outPipe = new PipedOutputStream();

    /*
     *  This constructor not available until Java 1.6:
     * inputStream = new PipedInputStream(outPipe, maxBytes);
     */
    try {
        inputStream =
            new InputStreamWrapper(new PipedInputStream(outPipe));

        while ((i =
                origStream.read(tarStream.writeBuffer, 0,
                                tarStream.writeBuffer.length)) > 0) {
            outPipe.write(tarStream.writeBuffer, 0, i);
        }

        outPipe.flush();    // Do any good on a pipe?
        dataSize = inputStream.available();

        if (TarFileOutputStream.debug) {
            System.out.println(
                RB.stream_buffer_report.getString(
                    Long.toString(dataSize)));
        }
    } catch (IOException ioe) {
        close();

        throw ioe;
    } finally {
        try {
            outPipe.close();
        } finally {
            outPipe = null;    // Encourage buffer GC
        }
    }

    modTime = new java.util.Date().getTime() / 1000L;
}
 
開發者ID:tiweGH,項目名稱:OpenDiabetes,代碼行數:74,代碼來源:TarGenerator.java

示例13: getPifData

import java.io.PipedOutputStream; //導入方法依賴的package包/類
protected PIFData getPifData(TarEntryHeader header)
throws IOException, TarMalformatException {

    /*
     * If you modify this, make sure to not intermix reading/writing of
     * the PipedInputStream and the PipedOutputStream, or you could
     * cause dead-lock.  Everything is safe if you close the
     * PipedOutputStream before reading the PipedInputStream.
     */
    long dataSize = header.getDataSize();

    if (dataSize < 1) {
        throw new TarMalformatException(
            RB.singleton.getString(RB.PIF_UNKNOWN_DATASIZE));
    }

    if (dataSize > Integer.MAX_VALUE) {
        throw new TarMalformatException(
            RB.singleton.getString(
                RB.PIF_DATA_TOOBIG, Long.toString(dataSize),
                Integer.MAX_VALUE));
    }

    int readNow;
    int readBlocks = (int) (dataSize / 512L);
    int modulus    = (int) (dataSize % 512L);

    // Couldn't care less about the entry "name" field.
    PipedOutputStream outPipe = new PipedOutputStream();
    PipedInputStream  inPipe  = new PipedInputStream(outPipe);

    /* This constructor not available until Java 1.6:
            new PipedInputStream(outPipe, (int) dataSize);
    */
    try {
        while (readBlocks > 0) {
            readNow = (readBlocks > archive.getReadBufferBlocks())
                      ? archive.getReadBufferBlocks()
                      : readBlocks;

            archive.readBlocks(readNow);

            readBlocks -= readNow;

            outPipe.write(archive.readBuffer, 0, readNow * 512);
        }

        if (modulus != 0) {
            archive.readBlock();
            outPipe.write(archive.readBuffer, 0, modulus);
        }

        outPipe.flush();    // Do any good on a pipe?
    } catch (IOException ioe) {
        inPipe.close();

        throw ioe;
    } finally {
        outPipe.close();
    }

    return new PIFData(inPipe);
}
 
開發者ID:s-store,項目名稱:sstore-soft,代碼行數:64,代碼來源:TarReader.java

示例14: TarEntrySupplicant

import java.io.PipedOutputStream; //導入方法依賴的package包/類
/**
 * After instantiating a TarEntrySupplicant, the user must either invoke
 * write() or close(), to release system resources on the input
 * File/Stream.
 * <P/>
 * <B>WARNING:</B>
 * Do not use this method unless the quantity of available RAM is
 * sufficient to accommodate the specified maxBytes all at one time.
 * This constructor loads all input from the specified InputStream into
 * RAM before anything is written to disk.
 *
 * @param maxBytes This method will fail if more than maxBytes bytes
 *                 are supplied on the specified InputStream.
 *                 As the type of this parameter enforces, the max
 *                 size you can request is 2GB.
 */
public TarEntrySupplicant(String path, InputStream origStream,
                          int maxBytes, char typeFlag,
                          TarFileOutputStream tarStream)
                          throws IOException, TarMalformatException {

    /*
     * If you modify this, make sure to not intermix reading/writing of
     * the PipedInputStream and the PipedOutputStream, or you could
     * cause dead-lock.  Everything is safe if you close the
     * PipedOutputStream before reading the PipedInputStream.
     */
    this(path, typeFlag, tarStream);

    if (maxBytes < 1) {
        throw new IllegalArgumentException(
            RB.singleton.getString(RB.READ_LT_1));
    }

    int               i;
    PipedOutputStream outPipe = new PipedOutputStream();

    inputStream = new PipedInputStream(outPipe);

    /* This constructor not available until Java 1.6:
    inputStream = new PipedInputStream(outPipe, maxBytes);
    */
    try {
        while ((i =
                origStream
                    .read(tarStream.writeBuffer, 0, tarStream
                        .writeBuffer.length)) > 0) {
            outPipe.write(tarStream.writeBuffer, 0, i);
        }

        outPipe.flush();    // Do any good on a pipe?

        dataSize = inputStream.available();

        if (TarFileOutputStream.debug) {
            System.out.println(
                RB.singleton.getString(
                    RB.STREAM_BUFFER_REPORT, Long.toString(dataSize)));
        }
    } catch (IOException ioe) {
        inputStream.close();

        throw ioe;
    } finally {
        outPipe.close();
    }

    modTime = new java.util.Date().getTime() / 1000L;
}
 
開發者ID:s-store,項目名稱:sstore-soft,代碼行數:70,代碼來源:TarGenerator.java


注:本文中的java.io.PipedOutputStream.close方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。