Package adams.core
Class TechnicalInformation
- java.lang.Object
-
- adams.core.TechnicalInformation
-
public class TechnicalInformation extends Object
Used for paper references in the Javadoc and for BibTex generation. Based on documentation found here:
http://www.ecst.csuchico.edu/~jacobsd/bib/formats/bibtex.html
BibTex examples can be found here:
http://bib2web.djvuzone.org/bibtex.html- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
TechnicalInformationHandler
,TechnicalInformation
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
TechnicalInformation.Field
the possible fields.static class
TechnicalInformation.Type
the different types of information.
-
Field Summary
Fields Modifier and Type Field Description protected List<TechnicalInformation>
m_Additional
additional technical informations.protected String
m_ID
the unique identifier of this information, will be generated automatically if left empty.protected TechnicalInformation.Type
m_Type
the type of this technical information.protected Hashtable<TechnicalInformation.Field,String>
m_Values
stores all the values associated with the fields (FIELD - String).protected static String
MISSING_ID
will be returned if no ID can be generated.
-
Constructor Summary
Constructors Constructor Description TechnicalInformation(TechnicalInformation.Type type)
Initializes the information with the given type.TechnicalInformation(TechnicalInformation.Type type, String id)
Initializes the information with the given type.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(TechnicalInformation value)
adds the given information to the list of additional technical informations.TechnicalInformation
add(TechnicalInformation.Type type)
Adds an empty technical information with the given type to the list of additional informations and returns the instance.Iterator<TechnicalInformation>
additional()
returns an enumeration of all the additional technical informations (if there are any).boolean
exists(TechnicalInformation.Field field)
returns TRUE if the field is stored and has a value different from the empty string.Iterator<TechnicalInformation.Field>
fields()
returns an enumeration over all the stored fields.protected String
generateID()
Generates an ID based on the current settings and returns it.protected String[]
getAuthors()
splits the authors on the " and " and returns a vector with the names.String
getID()
returns the unique ID (either the one used in creating this instance or the automatically generated one).TechnicalInformation.Type
getType()
returns the type of this technical information.String
getValue(TechnicalInformation.Field field)
returns the value associated with the given field, or empty if field is not currently stored.boolean
hasAdditional()
returns true if there are further technical informations stored in this.void
setValue(TechnicalInformation.Field field, String value)
sets the value for the given field, overwrites any previously existing one.String
toBibTex()
Returns a BibTex string representing this technical information.String
toString()
Returns a plain-text string representing this technical information.
-
-
-
Field Detail
-
MISSING_ID
protected static final String MISSING_ID
will be returned if no ID can be generated.- See Also:
- Constant Field Values
-
m_Type
protected TechnicalInformation.Type m_Type
the type of this technical information.
-
m_ID
protected String m_ID
the unique identifier of this information, will be generated automatically if left empty.
-
m_Values
protected Hashtable<TechnicalInformation.Field,String> m_Values
stores all the values associated with the fields (FIELD - String).
-
m_Additional
protected List<TechnicalInformation> m_Additional
additional technical informations.
-
-
Constructor Detail
-
TechnicalInformation
public TechnicalInformation(TechnicalInformation.Type type)
Initializes the information with the given type.- Parameters:
type
- the type of this information- See Also:
TechnicalInformation.Type
-
TechnicalInformation
public TechnicalInformation(TechnicalInformation.Type type, String id)
Initializes the information with the given type.- Parameters:
type
- the type of this informationid
- the unique ID (for BibTex), can be empty- See Also:
TechnicalInformation.Type
-
-
Method Detail
-
getType
public TechnicalInformation.Type getType()
returns the type of this technical information.- Returns:
- the type of this information
-
getAuthors
protected String[] getAuthors()
splits the authors on the " and " and returns a vector with the names.- Returns:
- the authors in an array
-
generateID
protected String generateID()
Generates an ID based on the current settings and returns it. If nothing can be generated the MISSING_ID string will be returned- Returns:
- the ID
- See Also:
MISSING_ID
-
getID
public String getID()
returns the unique ID (either the one used in creating this instance or the automatically generated one).- Returns:
- the ID for this information
-
setValue
public void setValue(TechnicalInformation.Field field, String value)
sets the value for the given field, overwrites any previously existing one.- Parameters:
field
- the field to set the value forvalue
- the value of the field
-
getValue
public String getValue(TechnicalInformation.Field field)
returns the value associated with the given field, or empty if field is not currently stored.- Parameters:
field
- the field to retrieve the value for- Returns:
- the value associated with this field, empty if not existing
-
exists
public boolean exists(TechnicalInformation.Field field)
returns TRUE if the field is stored and has a value different from the empty string.- Parameters:
field
- the field to check- Returns:
- true if a value is stored for the field and non-empty
-
fields
public Iterator<TechnicalInformation.Field> fields()
returns an enumeration over all the stored fields.- Returns:
- all currently stored fields
-
hasAdditional
public boolean hasAdditional()
returns true if there are further technical informations stored in this.- Returns:
- true if there are further technical informations available
-
additional
public Iterator<TechnicalInformation> additional()
returns an enumeration of all the additional technical informations (if there are any).- Returns:
- an enumeration over all additional technical informations
-
add
public void add(TechnicalInformation value)
adds the given information to the list of additional technical informations.- Parameters:
value
- the information to add
-
add
public TechnicalInformation add(TechnicalInformation.Type type)
Adds an empty technical information with the given type to the list of additional informations and returns the instance.- Parameters:
type
- the type of the new information to add- Returns:
- the generated information
-
toString
public String toString()
Returns a plain-text string representing this technical information. Note: it only returns a string based on some fields. At least AUTHOR, YEAR and TITLE are necessary.
-
toBibTex
public String toBibTex()
Returns a BibTex string representing this technical information. Note: this is just a very raw implementation, special characters need to be escaped manually for LaTeX.- Returns:
- the BibTeX representation of this information
-
-