edu.jhu.ece.iacl.jist.pipeline
Class AlgorithmInformation

java.lang.Object
  extended by edu.jhu.ece.iacl.jist.pipeline.AlgorithmInformation
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<AlgorithmInformation>

public class AlgorithmInformation
extends java.lang.Object
implements java.lang.Comparable<AlgorithmInformation>, java.lang.Cloneable

Information that describes the algorithm, including its authors, citations, and version information.

Author:
Blake Lucas (bclucas@jhu.edu)

Nested Class Summary
static class AlgorithmInformation.AlgorithmAuthor
          The Class AlgorithmAuthor.
static class AlgorithmInformation.Citation
          The Class Citation.
 
Field Summary
protected  java.lang.String affiliation
          The institute affiliation.
protected  java.lang.String algorithmClass
          The algorithm class.
protected  java.util.LinkedList<AlgorithmInformation.AlgorithmAuthor> authors
          Algorithm authors.
protected  java.util.LinkedList<AlgorithmInformation.Citation> citations
          The citations.
protected  java.util.Date creationDate
          The creation date.
protected  java.lang.String description
          The description.
protected  DevelopmentStatus devStatus
          The Category.
protected  boolean editable
          Editable.
protected  java.lang.String label
          name and label for parameter.
protected  java.lang.String longdescription
          The long description.
protected  java.lang.String name
          name and label for parameter.
protected  java.lang.String version
          The version.
protected  java.lang.String website
          The website.
 
Constructor Summary
AlgorithmInformation(ProcessingAlgorithm algo)
          Instantiates a new algorithm information.
AlgorithmInformation(java.lang.String name, java.lang.String label, java.lang.String c)
          Instantiates a new algorithm information.
 
Method Summary
 void add(AlgorithmInformation.AlgorithmAuthor author)
          Adds the.
 void add(AlgorithmInformation.Citation cite)
          Adds the.
 AlgorithmInformation clone()
          Clone information.
 int compareTo(AlgorithmInformation o)
          Unimplemented.
 boolean equals(AlgorithmInformation info)
          Equals.
 java.lang.String getAffiliation()
          Gets the affiliation.
 java.lang.Class getAlgorithmClass()
          Gets the algorithm class.
 java.lang.String getAlgorithmClassName()
          Gets the algorithm class name.
 java.util.LinkedList<AlgorithmInformation.AlgorithmAuthor> getAuthors()
          Gets the authors.
 java.util.LinkedList<AlgorithmInformation.Citation> getCitations()
          Gets the citations.
 java.util.Date getCreationDate()
          Gets the creation date.
 java.lang.String getDescription()
          Gets the description.
 java.lang.String getLabel()
          Gets the label.
 java.lang.String getLongDescription()
          Gets the Long description.
 java.lang.String getName()
          Gets the name.
 DevelopmentStatus getStatus()
          Gets the status.
 java.lang.String getStatusString()
          Gets the status string.
 java.lang.String getVersion()
          Gets the version.
 java.lang.String getWebsite()
          Gets the website.
 void init(ProcessingAlgorithm algo)
          Initialize the information from the algorithm.
 boolean isEditable()
          Returns true if editable.
 void setAffiliation(java.lang.String affiliation)
          Sets the affiliation.
 void setAlgorithmClass(java.lang.Class algoClass)
          Sets the algorithm class.
 void setAuthors(java.util.LinkedList<AlgorithmInformation.AlgorithmAuthor> authors)
          Sets the authors.
 void setCitations(java.util.LinkedList<AlgorithmInformation.Citation> citations)
          Sets the citations.
 void setCreationDate(java.util.Date creationDate)
          Sets the creation date.
 void setDescription(java.lang.String description)
          Sets the description.
 void setEditable(boolean editable)
          Set whether information can be edited.
 void setLabel(java.lang.String label)
          Sets the label.
 void setLongDescription(java.lang.String longdescription)
          Sets the long description.
 void setName(java.lang.String name)
          Sets the name.
 void setStatus(DevelopmentStatus status)
          Sets the status.
 void setVersion(java.lang.String version)
          Sets the version.
 void setWebsite(java.lang.String website)
          Sets the website.
 java.lang.String toString()
          Serialize information as string.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

devStatus

protected DevelopmentStatus devStatus
The Category.


authors

protected java.util.LinkedList<AlgorithmInformation.AlgorithmAuthor> authors
Algorithm authors.


citations

protected java.util.LinkedList<AlgorithmInformation.Citation> citations
The citations.


creationDate

protected java.util.Date creationDate
The creation date.


version

protected java.lang.String version
The version.


description

protected java.lang.String description
The description.


longdescription

protected java.lang.String longdescription
The long description.


website

protected java.lang.String website
The website.


affiliation

protected java.lang.String affiliation
The institute affiliation.


name

protected java.lang.String name
name and label for parameter.


label

protected java.lang.String label
name and label for parameter.


algorithmClass

protected java.lang.String algorithmClass
The algorithm class.


editable

protected boolean editable
Editable.

Constructor Detail

AlgorithmInformation

public AlgorithmInformation(ProcessingAlgorithm algo)
Instantiates a new algorithm information.

Parameters:
algo - the algorithm

AlgorithmInformation

public AlgorithmInformation(java.lang.String name,
                            java.lang.String label,
                            java.lang.String c)
Instantiates a new algorithm information.

Parameters:
name - the name
label - the label
c - the class
Method Detail

setEditable

public void setEditable(boolean editable)
Set whether information can be edited.

Parameters:
editable - the editable

isEditable

public boolean isEditable()
Returns true if editable.

Returns:
true if editable.

getStatus

public DevelopmentStatus getStatus()
Gets the status.

Returns:
the status

setStatus

public void setStatus(DevelopmentStatus status)
Sets the status.

Parameters:
status - the new status

add

public void add(AlgorithmInformation.AlgorithmAuthor author)
Adds the.

Parameters:
author - the author

add

public void add(AlgorithmInformation.Citation cite)
Adds the.

Parameters:
cite - the citation

clone

public AlgorithmInformation clone()
Clone information.

Overrides:
clone in class java.lang.Object
Returns:
the algorithm information

compareTo

public int compareTo(AlgorithmInformation o)
Unimplemented.

Specified by:
compareTo in interface java.lang.Comparable<AlgorithmInformation>
Parameters:
o - the o
Returns:
the int

getAffiliation

public java.lang.String getAffiliation()
Gets the affiliation.

Returns:
the affiliation

getAlgorithmClass

public java.lang.Class getAlgorithmClass()
Gets the algorithm class.

Returns:
the algorithm class

getAlgorithmClassName

public java.lang.String getAlgorithmClassName()
Gets the algorithm class name.

Returns:
the algorithm class

getAuthors

public java.util.LinkedList<AlgorithmInformation.AlgorithmAuthor> getAuthors()
Gets the authors.

Returns:
the authors

getCitations

public java.util.LinkedList<AlgorithmInformation.Citation> getCitations()
Gets the citations.

Returns:
the citations

getCreationDate

public java.util.Date getCreationDate()
Gets the creation date.

Returns:
the creation date

getDescription

public java.lang.String getDescription()
Gets the description.

Returns:
the description

getLongDescription

public java.lang.String getLongDescription()
Gets the Long description.

Returns:
the longdescription

getLabel

public java.lang.String getLabel()
Gets the label.

Returns:
the label

getName

public java.lang.String getName()
Gets the name.

Returns:
the name

getVersion

public java.lang.String getVersion()
Gets the version.

Returns:
the version

getWebsite

public java.lang.String getWebsite()
Gets the website.

Returns:
the website

init

public void init(ProcessingAlgorithm algo)
Initialize the information from the algorithm.

Parameters:
algo - the algorithm

setAffiliation

public void setAffiliation(java.lang.String affiliation)
Sets the affiliation.

Parameters:
affiliation - the new affiliation

setAlgorithmClass

public void setAlgorithmClass(java.lang.Class algoClass)
Sets the algorithm class.

Parameters:
algoClass - the new algorithm class

setAuthors

public void setAuthors(java.util.LinkedList<AlgorithmInformation.AlgorithmAuthor> authors)
Sets the authors.

Parameters:
authors - the new authors

setCitations

public void setCitations(java.util.LinkedList<AlgorithmInformation.Citation> citations)
Sets the citations.

Parameters:
citations - the new citations

setCreationDate

public void setCreationDate(java.util.Date creationDate)
Sets the creation date.

Parameters:
creationDate - the new creation date

setDescription

public void setDescription(java.lang.String description)
Sets the description.

Parameters:
description - the new description

setLongDescription

public void setLongDescription(java.lang.String longdescription)
Sets the long description.

Parameters:
longdescription - the longdescription

setLabel

public void setLabel(java.lang.String label)
Sets the label.

Parameters:
label - the new label

setName

public void setName(java.lang.String name)
Sets the name.

Parameters:
name - the new name

setVersion

public void setVersion(java.lang.String version)
Sets the version.

Parameters:
version - the new version

setWebsite

public void setWebsite(java.lang.String website)
Sets the website.

Parameters:
website - the new website

getStatusString

public java.lang.String getStatusString()
Gets the status string.

Returns:
the status string

toString

public java.lang.String toString()
Serialize information as string.

Overrides:
toString in class java.lang.Object
Returns:
the string

equals

public boolean equals(AlgorithmInformation info)
Equals.

Parameters:
info - the info
Returns:
true, if successful