edu.iu.iv.core.persistence
Class PersisterProperty

java.lang.Object
  |
  +--edu.iu.iv.core.persistence.PersisterProperty

public class PersisterProperty
extends java.lang.Object

This class defines properties that each persister can choose to provide. Almost all of the properties here are to help a user choose among multiple persisters with differing capabilities.

Version:
0.1
Author:
Team IVC

Field Summary
static Property FORMAT_CREATOR
          The name of the author who created/owns the format.
static Property FORMAT_DESCRIPTION
          The description of this format in short.
static Property FORMAT_DOCUMENTATION_LINK
           
static Property FORMAT_NAME
          The name of the format that this persister can persist data as.
static Property PERSISTER_DESCRIPTION
          This property provides additional information and complements the PERSISTER_NAME property.
static Property PERSISTER_DOCUMENTATION_LINK
          The URL to a resource that describes this persister and format in detail.
static Property PERSISTER_NAME
          The name of this persister.
static Property RESTORABLE_MODEL_DESCRIPTION
          The description of the data model that can be restored by a persister.
static Property RESTORABLE_MODEL_NAME
          The name of the data model that can be restored by a persister.
static Property SUPPORTED_FILE_EXTENSION
          The file extension supported by this persister.
 
Constructor Summary
PersisterProperty()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FORMAT_NAME

public static final Property FORMAT_NAME
The name of the format that this persister can persist data as.
Example: Harwell-Boeing Sparse Matrix Format


FORMAT_DESCRIPTION

public static final Property FORMAT_DESCRIPTION
The description of this format in short. This property should include a short description that lets the user know if she should use this persister to store her data. Certain formats may not be able to save everything and hence this property should let the user know about a persister's specifics. However, detailed format descriptions should be left to the documentation pages.
Ex: Stores a sparse matrix in coordinate wise format, plus row and column labels.


RESTORABLE_MODEL_NAME

public static final Property RESTORABLE_MODEL_NAME
The name of the data model that can be restored by a persister. This should be short and should allow a user to get enough idea about what type of data this is.
 
  
   <b>Examples:</b> 
  
 
<i>OK</i>: Graph (JUNG API)
<i>OK</i>: Matrix (IVC)
<i>Not OK</i>: Really efficient tree model.

See Also:
edu.iu.iv.core.persistence.PersisterProperty.RESTORABLE_MODEL_DESCRIPTION

RESTORABLE_MODEL_DESCRIPTION

public static final Property RESTORABLE_MODEL_DESCRIPTION
The description of the data model that can be restored by a persister. This description should offer more details than edu.iu.iv.core.persistence.PersisterProperty.RESTORABLE_MODEL_NAME but should still be short enough for the user to quickly glance through. Detailed descriptions of the model and its limitations should not be stored using this property (that should go on the documentation pages), but it should allow the user to figure out if she needs to find out more before using the data model for her analysis.
 
  
   <b>Examples:</b> 
  
 
<i>OK</i>: Undirected graph from the JUNG API that stores only structure information. UserData is not filled in. <i>OK</i>: Sparse matrix format using compressed column storage. Access time for elements is not constant. <i>Not ok</i>: Tree model with color stored using key "color", size stored using key "size", border color for nodes stored using key "borderColor"...

See Also:
RESTORABLE_MODEL_NAME

SUPPORTED_FILE_EXTENSION

public static final Property SUPPORTED_FILE_EXTENSION
The file extension supported by this persister. Each persister must choose a particular file extension. This has been done to accomodate several commonly used file formats which do not carry any metadata inside the file which can help decipher their type, such as CSV (Comma Separated Values) or TXT (Plain Text Files).
Examples: .hbf (the '.' must be part of this string)


PERSISTER_NAME

public static final Property PERSISTER_NAME
The name of this persister. In certain cases, just knowing the name of the file format might no be enough for a user to choose a persister. For example two different persisters might be able to restore from the same resource to the same data model. But these persisters might have made different trade-offs with respect to speed and robustness, etc. In such a case, a user might be able to identify the persister she needs based on the name. This name should be short and should allow a user to simply identify what persister it is.
Examples: IVC Oracle Bridge

See Also:
PERSISTER_DESCRIPTION

PERSISTER_DESCRIPTION

public static final Property PERSISTER_DESCRIPTION
This property provides additional information and complements the PERSISTER_NAME property. This should be a brief description of the persister.
Note that this property is different from the FORMAT_DESCRIPTION property. The FORMAT_DESCRIPTION property describes the actual format itself, while this property describes what this persister does. The same format might be processed differently by different persisters. An example is a persister that writes formatted data to a network stream.
Example: Uses JDBC to write tabular data to an Oracle database.

See Also:
FORMAT_DESCRIPTION

FORMAT_CREATOR

public static final Property FORMAT_CREATOR
The name of the author who created/owns the format. This property allows a user to know if the format comes from a standard specification or if its a convenience format that is not supported universally.
Examples: W3C XML Committee


FORMAT_DOCUMENTATION_LINK

public static final Property FORMAT_DOCUMENTATION_LINK

PERSISTER_DOCUMENTATION_LINK

public static final Property PERSISTER_DOCUMENTATION_LINK
The URL to a resource that describes this persister and format in detail.
Example: http://graphml.graphdrawing.org/

Constructor Detail

PersisterProperty

public PersisterProperty()