Class COSArrayList<E>
java.lang.Object
org.apache.pdfbox.pdmodel.common.COSArrayList<E>
- All Implemented Interfaces:
Iterable<E>, Collection<E>, List<E>, SequencedCollection<E>
-
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.COSArrayList(E actualObject, COSBase item, COSDictionary dictionary, COSName dictionaryKey) This is a really special constructor.COSArrayList(List<E> actualList, COSArray cosArray) Create the COSArrayList specifying the List and the backing COSArray.COSArrayList(COSDictionary dictionary, COSName dictionaryKey) This constructor is to be used if the array doesn't exist, but is to be created and added to the parent dictionary as soon as the first element is added to the array. -
Method Summary
Modifier and TypeMethodDescriptionvoidbooleanbooleanaddAll(int index, Collection<? extends E> c) booleanaddAll(Collection<? extends E> c) voidclear()booleanbooleancontainsAll(Collection<?> c) convertCOSNameCOSArrayToList(COSArray nameArray) This will take an array of COSName and return a COSArrayList of java.lang.String values.convertCOSStringCOSArrayToList(COSArray stringArray) This will take an array of COSString and return a COSArrayList of java.lang.String values.static COSArrayconverterToCOSArray(List<?> cosObjectableList) This will convert a list of COSObjectables to an array list of COSBase objects.convertFloatCOSArrayToList(COSArray floatArray) This will take an array of COSNumbers and return a COSArrayList of java.lang.Float values.convertIntegerCOSArrayToList(COSArray intArray) This will take an array of COSNumbers and return a COSArrayList of java.lang.Integer values.static COSArrayconvertStringListToCOSNameCOSArray(List<String> strings) This will take an list of string objects and return a COSArray of COSName objects.static COSArrayconvertStringListToCOSStringCOSArray(List<String> strings) This will take an list of string objects and return a COSArray of COSName objects.booleanget(int index) This will return the underlying COSArray.inthashCode()intbooleanisEmpty()iterator()intlistIterator(int index) remove(int index) booleanbooleanremoveAll(Collection<?> c) booleanretainAll(Collection<?> c) intsize()subList(int fromIndex, int toIndex) Object[]toArray()<X> X[]toArray(X[] a) toList()Deprecated.toString()Methods inherited from interface Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface List
addFirst, addLast, getFirst, getLast, removeFirst, removeLast, replaceAll, reversed, sort, spliterator
-
Constructor Details
-
COSArrayList
public COSArrayList()Default constructor. -
COSArrayList
Create the COSArrayList specifying the List and the backing COSArray.User of this constructor need to ensure that the entries in the List and the backing COSArray are matching i.e. the COSObject of the List entry is included in the COSArray.
If the number of entries in the List and the COSArray differ it is assumed that the List has been filtered. In that case the COSArrayList shall only be used for reading purposes and no longer for updating.
- Parameters:
actualList- The list of standard java objectscosArray- The COS array object to sync to.
-
COSArrayList
This constructor is to be used if the array doesn't exist, but is to be created and added to the parent dictionary as soon as the first element is added to the array.- Parameters:
dictionary- The dictionary that holds the item, and will hold the array if an item is added.dictionaryKey- The key into the dictionary to set the item.
-
COSArrayList
This is a really special constructor. Sometimes the PDF spec says that a dictionary entry can either be a single item or an array of those items. But in the PDModel interface we really just want to always return a java.util.List. In the case were we get the list and never modify it we don't want to convert to COSArray and put one element, unless we append to the list. So here we are going to create this object with a single item instead of a list, but allow more items to be added and then converted to an array.- Parameters:
actualObject- The PDModel object.item- The COS Model object.dictionary- The dictionary that holds the item, and will hold the array if an item is added.dictionaryKey- The key into the dictionary to set the item.
-
-
Method Details
-
size
-
isEmpty
-
contains
-
iterator
-
toArray
-
toArray
-
add
-
remove
-
containsAll
- Specified by:
containsAllin interfaceCollection<E>- Specified by:
containsAllin interfaceList<E>
-
addAll
-
addAll
-
convertIntegerCOSArrayToList
-
convertFloatCOSArrayToList
-
convertCOSNameCOSArrayToList
-
convertCOSStringCOSArrayToList
-
convertStringListToCOSNameCOSArray
-
convertStringListToCOSStringCOSArray
-
converterToCOSArray
This will convert a list of COSObjectables to an array list of COSBase objects.- Parameters:
cosObjectableList- A list of COSObjectable.- Returns:
- A list of COSBase.
- Throws:
IllegalArgumentException- if an object type is not supported for conversion to a COSBase object.
-
removeAll
-
retainAll
-
clear
-
equals
-
hashCode
-
get
-
set
-
add
-
remove
-
indexOf
-
lastIndexOf
- Specified by:
lastIndexOfin interfaceList<E>
-
listIterator
- Specified by:
listIteratorin interfaceList<E>
-
listIterator
- Specified by:
listIteratorin interfaceList<E>
-
subList
-
toString
-
getCOSArray
-
toList
Deprecated.usegetCOSArray()instead.This will return the underlying COSArray.- Returns:
- the COSArray
-
getCOSArray()instead.