+++ /dev/null
-package be.nikiroo.utils.streams;
-
-import java.io.UnsupportedEncodingException;
-
-/**
- * Some non-public utilities used in the stream classes.
- *
- * @author niki
- */
-class StreamUtils {
- /**
- * Check if the buffer starts with the given search term (given as an array,
- * a start position and an end position).
- * <p>
- * Note: the parameter <tt>stop</tt> is the <b>index</b> of the last
- * position, <b>not</b> the length.
- * <p>
- * Note: the search term size <b>must</b> be smaller or equal the internal
- * buffer size.
- *
- * @param search
- * the term to search for
- * @param buffer
- * the buffer to look into
- * @param start
- * the offset at which to start the search
- * @param stop
- * the maximum index of the data to check (this is <b>not</b> a
- * length, but an index)
- *
- * @return TRUE if the search content is present at the given location and
- * does not exceed the <tt>len</tt> index
- */
- static public boolean startsWith(byte[] search, byte[] buffer, int start,
- int stop) {
-
- // Check if there even is enough space for it
- if (search.length > (stop - start)) {
- return false;
- }
-
- boolean same = true;
- for (int i = 0; i < search.length; i++) {
- if (search[i] != buffer[start + i]) {
- same = false;
- break;
- }
- }
-
- return same;
- }
-
- /**
- * Return the bytes array representation of the given {@link String} in
- * UTF-8.
- *
- * @param str
- * the string to transform into bytes
- * @return the content in bytes
- */
- static public byte[] bytes(String str) {
- try {
- return str.getBytes("UTF-8");
- } catch (UnsupportedEncodingException e) {
- // All conforming JVM must support UTF-8
- e.printStackTrace();
- return null;
- }
- }
-}