Package uk.ac.starlink.topcat
Class TopcatCodec1
java.lang.Object
uk.ac.starlink.topcat.TopcatCodec1
- All Implemented Interfaces:
TopcatCodec
Original TopcatCodec implementation.
This works but serializes all row subsets as bit masks and
all columns as literal values. Thus a session round-tripped
using this codec gives you back all the table and subset
values that you had in the first place, but the expressions
are lost, and additional file space is used to serialize
these synthetic columns and subsets.
An additional issue is that there is a limit of 64 subsets.
- Since:
- 16 Jul 2010
- Author:
- Mark Taylor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondecode
(uk.ac.starlink.table.StarTable table, String location, ControlWindow controlWindow) uk.ac.starlink.table.StarTable
encode
(TopcatModel tcModel) Turns a TopcatModel into a StarTable, ready for serialization.boolean
isCodecUtype
(String utype) Indicates whether a given utype is a marker for metadata private to the serialization scheme used by this class.boolean
isEncoded
(uk.ac.starlink.table.StarTable table) Indicates whether a given table is a candidate for this codec'sdecode
method.
-
Constructor Details
-
TopcatCodec1
public TopcatCodec1()
-
-
Method Details
-
encode
Description copied from interface:TopcatCodec
Turns a TopcatModel into a StarTable, ready for serialization.- Specified by:
encode
in interfaceTopcatCodec
- Parameters:
tcModel
- model- Returns:
- table
-
isEncoded
public boolean isEncoded(uk.ac.starlink.table.StarTable table) Description copied from interface:TopcatCodec
Indicates whether a given table is a candidate for this codec'sdecode
method. It should in general return true for a table that has been returned from this object'sencode
method (possibly following a table write/read cycle) and false for other tables.- Specified by:
isEncoded
in interfaceTopcatCodec
- Parameters:
table
- data+metadata table- Returns:
- true iff it looks like the table was written by this codec and can be decoded by it
-
decode
public TopcatModel decode(uk.ac.starlink.table.StarTable table, String location, ControlWindow controlWindow) Description copied from interface:TopcatCodec
Takes a table which has been previously serialized by calling this codec'sencode
method, and for which theisEncoded
method returns true, and turns it into a TopcatModel. If decoding fails, null is returned.If used with a ControlWindow that users may be interacting with, this method should be called from the AWT event dispatch thread. This method may (for instance during testing) be called with a null value for the
controlWindow
parameter, but the resulting TopcatModel may not be suitable for all kinds of user interactions.- Specified by:
decode
in interfaceTopcatCodec
- Parameters:
table
- encoded tablelocation
- table location stringcontrolWindow
- control window, or null if necessary- Returns:
- topcat model, or null
-
isCodecUtype
Indicates whether a given utype is a marker for metadata private to the serialization scheme used by this class.- Parameters:
utype
- info utype- Returns:
- true iff utype is for private codec purposes
-