Package Torello.Java.Additional
Class VarListBuilderWithApply<ORIGINAL,TRANSFORMED>
- java.lang.Object
-
- Torello.Java.Additional.VarListBuilderWithApply<ORIGINAL,TRANSFORMED>
-
- Type Parameters:
ORIGINAL
- This is the original 'type' of the container's contents, before those contents are transformed. In the case ofFileNode
andFileNode.RetTypeChoice
, this shall always beFileNode
.TRANSFORMED
- This is the 'type' for the container's contents, after a transformation - which, in the case ofFileNode
andFileNode.RetTypeChoice
, is a cute way of sayingFileNode.toString()
andFileNode.getFullPathName()
- namely the 'type'String
, which is what is ultimately returned to the user.
In the above mentioned case, type<TRANSFORMED>
(the 'transformation-type') will always bejava.lang.String
. TheseString's
would all hold either a'file-name'
or a'full-path file-name'
.
public class VarListBuilderWithApply<ORIGINAL,TRANSFORMED> extends java.lang.Object
Implementation of theFileNode
class'RetTypeChoice'
.
Java HTML Library Helper for Torello.Java.FileNode
Currently, the only application for theVarList
User-Specified Variable Return Type Interface is for theFileNode
helper-class'RetTypeChoice'
.
This class could theoretically be used wherever there are many container-variants for the same set of identical-data being returned to a user.
This class will build a suite of implementations of theVarList
interface. This version provides the ability to transform the list-contents class / type.
Hi-Lited Source-Code:- View Here: Torello/Java/Additional/VarListBuilderWithApply.java
- Open New Browser-Tab: Torello/Java/Additional/VarListBuilderWithApply.java
-
-
Field Summary
Fields Modifier and Type Field VarList<TRANSFORMED[],ORIGINAL>
ARRAY
VarList<ArrayList<TRANSFORMED>,
ORIGINAL>ARRAYLIST
VarList<HashSet<TRANSFORMED>,
ORIGINAL>HASHSET
VarList<Iterator<TRANSFORMED>,
ORIGINAL>ITERATOR
VarList<LinkedList<TRANSFORMED>,
ORIGINAL>LINKEDLIST
VarList<Stack<TRANSFORMED>,
ORIGINAL>STACK
VarList<Stream<TRANSFORMED>,
ORIGINAL>STREAM
VarList<Stream.Builder<TRANSFORMED>,
ORIGINAL>STREAM_BUILDER
VarList<Vector<TRANSFORMED>,
ORIGINAL>VECTOR
-
Constructor Summary
Constructors Constructor VarListBuilderWithApply(Function<ORIGINAL,TRANSFORMED> transformer, Class<TRANSFORMED> outputClass)
-
-
-
Field Detail
-
VECTOR
public final VarList<java.util.Vector<TRANSFORMED>,ORIGINAL> VECTOR
ThisVarList
instance has a'retrieve()'
method that will return aVector
whoseVector
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<Vector<TRANSFORMED>, ORIGINAL> VECTOR;
-
ARRAYLIST
public final VarList<java.util.ArrayList<TRANSFORMED>,ORIGINAL> ARRAYLIST
ThisVarList
instance has a'retrieve()'
method that will return anArrayList
whoseArrayList
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<ArrayList<TRANSFORMED>, ORIGINAL> ARRAYLIST;
-
ITERATOR
public final VarList<java.util.Iterator<TRANSFORMED>,ORIGINAL> ITERATOR
ThisVarList
instance has a'retrieve()'
method that will return anIterator
whoseIterator
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<Iterator<TRANSFORMED>, ORIGINAL> ITERATOR;
-
ARRAY
public final VarList<TRANSFORMED[],ORIGINAL> ARRAY
ThisVarList
instance has a'retrieve()'
method that will return anarray
whosearray
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<TRANSFORMED[], ORIGINAL> ARRAY;
-
STREAM
public final VarList<java.util.stream.Stream<TRANSFORMED>,ORIGINAL> STREAM
ThisVarList
instance has a'retrieve()'
method that will return aStream
whoseStream
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<Stream<TRANSFORMED>, ORIGINAL> STREAM;
-
STREAM_BUILDER
public final VarList<java.util.stream.Stream.Builder<TRANSFORMED>,ORIGINAL> STREAM_BUILDER
ThisVarList
instance has a'retrieve()'
method that will return aStream.Builder
whoseBuilder
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<Stream.Builder<TRANSFORMED>, ORIGINAL> STREAM_BUILDER;
-
LINKEDLIST
public final VarList<java.util.LinkedList<TRANSFORMED>,ORIGINAL> LINKEDLIST
ThisVarList
instance has a'retrieve()'
method that will return aLinkedList
whoseLinkedList
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<LinkedList<TRANSFORMED>, ORIGINAL> LINKEDLIST;
-
HASHSET
public final VarList<java.util.HashSet<TRANSFORMED>,ORIGINAL> HASHSET
ThisVarList
instance has a'retrieve()'
method that will return aHashSet
whoseHashSet
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<HashSet<TRANSFORMED>, ORIGINAL> HASHSET;
-
STACK
public final VarList<java.util.Stack<TRANSFORMED>,ORIGINAL> STACK
ThisVarList
instance has a'retrieve()'
method that will return aStack
whoseStack
-contents are of parametrized-type'TRANSFORMED'
- Code:
- Exact Field Declaration Expression:
public final VarList<Stack<TRANSFORMED>, ORIGINAL> STACK;
-
-
Constructor Detail
-
VarListBuilderWithApply
public VarListBuilderWithApply (java.util.function.Function<ORIGINAL,TRANSFORMED> transformer, java.lang.Class<TRANSFORMED> outputClass)
Builds all 8 of theVarList's
provided by this builder class.- Parameters:
transformer
- Thistransformer
is used to convert the contents of the returned list-type. As noticed by its type,'Function<ORIGINAL, TRANSFORMED>'
, the final type of the returnedVarList
will of type'TRANSFORMED'
, although while building this'VarList'
, the elements that shall be inserted will be of type'ORIGINAL'
.
It is the job of the transformer parameter to convert the elements from type'CONTENTS'
to type'TRANSFORMED'
outputClass
- The final list that is built will be of typeclass U
. Because java generics use "Type Erasure," this class must be obtained here. It is used for array generation or array-construction.
-
-