1 /* 2 * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved. 3 * @LastModified: Oct 2017 4 */ 5 /* 6 * Licensed to the Apache Software Foundation (ASF) under one or more 7 * contributor license agreements. See the NOTICE file distributed with 8 * this work for additional information regarding copyright ownership. 9 * The ASF licenses this file to You under the Apache License, Version 2.0 10 * (the "License"); you may not use this file except in compliance with 11 * the License. You may obtain a copy of the License at 12 * 13 * http://www.apache.org/licenses/LICENSE-2.0 14 * 15 * Unless required by applicable law or agreed to in writing, software 16 * distributed under the License is distributed on an "AS IS" BASIS, 17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 * See the License for the specific language governing permissions and 19 * limitations under the License. 20 */ 21 22 package com.sun.org.apache.xerces.internal.xs.datatypes; 23 24 import com.sun.org.apache.xerces.internal.xs.XSException; 25 import java.util.List; 26 27 /** 28 * <p>The <code>ByteList</code> is an immutable ordered collection of 29 * <code>byte</code>.</p> 30 * 31 * @author Ankit Pasricha, IBM 32 * 33 */ 34 public interface ByteList extends List<Byte> { 35 36 /** 37 * The number of <code>byte</code>s in the list. The range of 38 * valid child object indices is 0 to <code>length-1</code> inclusive. 39 */ 40 public int getLength(); 41 42 /** 43 * Checks if the <code>byte</code> <code>item</code> is a 44 * member of this list. 45 * @param item <code>byte</code> whose presence in this list 46 * is to be tested. 47 * @return True if this list contains the <code>byte</code> 48 * <code>item</code>. 49 */ 50 public boolean contains(byte item); 51 52 /** 53 * Returns the <code>index</code>th item in the collection. The index 54 * starts at 0. 55 * @param index index into the collection. 56 * @return The <code>byte</code> at the <code>index</code>th 57 * position in the <code>ByteList</code>. 58 * @exception XSException 59 * INDEX_SIZE_ERR: if <code>index</code> is greater than or equal to the 60 * number of objects in the list or less than zero. 61 */ 62 public byte item(int index) throws XSException; 63 64 /** 65 * Construct and return a byte array for bytes contained in this list. 66 */ 67 public byte[] toByteArray(); 68 }