Class FlatFieldFormatSupport

    • Constructor Detail

      • FlatFieldFormatSupport

        public FlatFieldFormatSupport()
    • Method Detail

      • insertField

        public void insertField​(MarshallingContext context,
                                java.lang.String text)
        Inserts field text into a record.
        Specified by:
        insertField in interface FieldFormat
        Parameters:
        context - the MarshallingContext holding the record
        text - the field text to insert into the record
      • insertFieldText

        protected abstract void insertFieldText​(MarshallingContext context,
                                                java.lang.String text,
                                                boolean commit)
      • extract

        public java.lang.String extract​(UnmarshallingContext context,
                                        boolean reporting)
        Description copied from interface: FieldFormat
        Extracts the field text from a record. Returns null if the field was not present in the record.

        May return Value.INVALID if the field is invalid, or Value.NIL if the field is explicitly set to nil or null such as in an XML or JSON formatted stream.

        Implementations should also remove any field padding before returning the text.

        Specified by:
        extract in interface FieldFormat
        Parameters:
        context - the UnmarshallingContext holding the record
        Returns:
        the field text
      • extractFieldText

        protected abstract java.lang.String extractFieldText​(UnmarshallingContext context,
                                                             boolean reporting)
      • getName

        public java.lang.String getName()
        Returns the field name.
        Returns:
        the field name
      • setName

        public void setName​(java.lang.String name)
        Sets the field name.
        Parameters:
        name - the field name
      • getPosition

        public int getPosition()
        Description copied from interface: FlatFieldFormat
        Returns the field position.

        In a delimited/CSV stream format, the position is the index of the field in the record starting at 0. For example, the position of field2 in the following comma delimited record is 1:

        field1,field2,field3

        In a fixed length stream format, the position is the index of the first character of the field in the record, also starting at 0. For example, the position of field2 in the following record is 6:

        field1field2field3

        Specified by:
        getPosition in interface FlatFieldFormat
        Returns:
        the field position
      • setPosition

        public void setPosition​(int position)
      • getUntil

        public int getUntil()
      • setUntil

        public void setUntil​(int until)
      • getSize

        public int getSize()
        Description copied from interface: FieldFormat
        Returns the size of the field. Fixed length formats should return the field length, while other formats should simply return 1.
        Specified by:
        getSize in interface FieldFormat
        Returns:
        the size of the field
      • isNillable

        public boolean isNillable()
        Description copied from interface: FieldFormat
        Returns whether this field is nillable.
        Specified by:
        isNillable in interface FieldFormat
        Returns:
        true if nillable, false otherwise
      • setPadding

        public void setPadding​(FieldPadding padding)
        Sets the field padding.
        Parameters:
        padding - the FieldPadding
      • isLazy

        public boolean isLazy()
        Description copied from interface: FieldFormat
        TODO rename isLazy to something better?? Returns whether this field is optionally present in the record.
        Specified by:
        isLazy in interface FieldFormat
        Returns:
        true if lazy, false otherwise
      • setLazy

        public void setLazy​(boolean lazy)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object