source: release-kits/lirk3/resources/gs3-release-maker/apache-ant-1.6.5/src/main/org/apache/tools/ant/DemuxInputStream.java@ 14982

Last change on this file since 14982 was 14982, checked in by oranfry, 16 years ago

initial import of LiRK3

File size: 1.6 KB
Line 
1/*
2 * Copyright 2003-2004 The Apache Software Foundation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 */
17
18package org.apache.tools.ant;
19
20import java.io.IOException;
21import java.io.InputStream;
22
23/**
24 *
25 * Passes input requests to the project object for demuxing into
26 * individual tasks and threads.
27 *
28 * @since Ant 1.6
29 */
30public class DemuxInputStream extends InputStream {
31
32 /**
33 * The project to from which to get input.
34 */
35 private Project project;
36
37 /**
38 * Create a DemuxInputStream for the given project
39 *
40 * @param project the project instance
41 */
42 public DemuxInputStream(Project project) {
43 this.project = project;
44 }
45
46 public int read() throws IOException {
47 byte[] buffer = new byte[1];
48 if (project.demuxInput(buffer, 0, 1) == -1) {
49 return -1;
50 }
51 return buffer[0];
52 }
53
54
55 public int read(byte[] buffer, int offset, int length) throws IOException {
56 return project.demuxInput(buffer, offset, length);
57 }
58
59}
Note: See TracBrowser for help on using the repository browser.