atg.test.io.ByteBufferInputStream Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of atgdust Show documentation
Show all versions of atgdust Show documentation
ATG DUST is a framework for building JUnit tests for
applications built on the ATG Dynamo platform. This framework allows
one to quickly write test code that depends up Nucleus or ATG
Repositories. By using this framework one can drastically cut down
on development time. It takes only a few seconds to start up a test
with a repository, but it may take multiple minutes to start up an
application server. To get started with DUST, take a look at
http://atgdust.sourceforge.net/first-test.html. This page will walk
you through the process of running a basic test which starts
Nucleus. After that, read the other getting started guides to
describe how to create standalone Junit tests which can startup
repositories and use the DynamoHttpServletResponse classes.
For only ATG10 and tested.
The newest version!
/**
* Copyright 2008 ATG DUST Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*
* You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*/
package atg.test.io;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
/**
* An InputStream which reads from a ByteBuffer
*
* @author Adam Belmont
* @version $Id:$
* @see ByteBuffer
*
*/
public class ByteBufferInputStream extends InputStream {
//-------------------------------------
/** Class version string */
public static String CLASS_VERSION =
"$Id:$";
private ByteBuffer mBuffer = null;
public ByteBufferInputStream(ByteBuffer pBuffer) {
mBuffer = pBuffer;
}
public int read(byte b[]) throws IOException {
return read(b, 0, b.length);
}
public synchronized int read() throws IOException {
if (!mBuffer.hasRemaining()) {
return -1;
}
return mBuffer.get();
}
public synchronized int read(byte[] bytes, int off, int len)
throws IOException {
len = Math.min(len, mBuffer.remaining());
mBuffer.get(bytes, off, len);
return len > 0 ? len : -1;
}
}