Changeset 8699


Ignore:
Timestamp:
2004-11-30T11:11:22+13:00 (19 years ago)
Author:
chi
Message:

Change program layout

Location:
trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/metadata
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/metadata/FileIdentifierFactory.java

    r6287 r8699  
    99public class FileIdentifierFactory extends AbstractIdentifierFactory
    1010{
    11   public static final String FILE_IDENTIFIER_PRELUDE = "FILE";
     11    public static final String FILE_IDENTIFIER_PRELUDE = "FILE";
     12       
     13    public FileIdentifierFactory()
     14    {
     15    super(FILE_IDENTIFIER_PRELUDE);
     16    }
     17}
    1218
    13   public FileIdentifierFactory()
    14   { super(FILE_IDENTIFIER_PRELUDE);
    15   }
    16 }
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/metadata/GSDL3Namespace.java

    r5800 r8699  
    2626public class GSDL3Namespace extends SimpleNamespace
    2727{
    28     public static String GSDL3_NAMESPACE_ID = "gsdl3";
    29     private static String GSDL3_METADATA_TAG = "Metadata";
     28    public static String GSDL3_NAMESPACE_ID = "gsdl3";
     29    private static String GSDL3_METADATA_TAG = "Metadata";
     30   
     31    public GSDL3Namespace()
     32    {
     33    super(GSDL3_NAMESPACE_ID);
     34    }
     35   
     36    public GSDL3Namespace(METSLocation location)
     37    {
     38    super(GSDL3_NAMESPACE_ID, location);
     39    }
     40   
     41    public GSDL3Namespace(Element mdWrapTag)
     42    {   
     43    super(GSDL3_NAMESPACE_ID);
     44   
     45    NodeList childNodes = mdWrapTag.getChildNodes();
     46    for (int c = 0; c < childNodes.getLength(); c ++){
     47        // a metadata node
     48        if (childNodes.item(c).getNodeType() == org.w3c.dom.Node.ELEMENT_NODE){
     49        String metadataLabel = childNodes.item(c).getNodeName();
    3050
    31     public GSDL3Namespace()
    32     { super(GSDL3_NAMESPACE_ID);
     51        // cull any leading "GSDL3" tag and its colon...
     52        if (metadataLabel.startsWith(GSDL3_NAMESPACE_ID + ":")){
     53            metadataLabel = metadataLabel.substring(this.name.length() + 1);
     54        }
     55       
     56        // TODO: throw error: bad metadata type
     57        if (metadataLabel.equals(GSDL3_METADATA_TAG) == false){
     58            continue;
     59        }
     60       
     61        // Get the label - if the name isn't set, abort.
     62        // TODO: throw error: incomplete metadata tag
     63        metadataLabel = ((Element) childNodes.item(c)).getAttribute("name");
     64        if (metadataLabel == null) {
     65            continue;
     66        }
     67       
     68        // now build the associated value.
     69        String metadataValue = "";
     70       
     71        Element childElement = (Element) childNodes.item(c);
     72        for (int i = 0; i < childElement.getChildNodes().getLength(); i ++) {
     73            metadataValue = metadataValue + childElement.getChildNodes().item(i).toString();
     74        }
     75       
     76        this.addMetadata(metadataLabel, metadataValue);
     77        }
    3378    }
    34 
    35     public GSDL3Namespace(METSLocation location)
    36     { super(GSDL3_NAMESPACE_ID, location);
     79    }
     80   
     81    /**
     82     *  Write out a single element - this may be overloaded to provide for the
     83     *  appropriate formatting for this metadata.
     84     */
     85    protected boolean writeItem(PrintWriter writer, String label)
     86    {   
     87    if (this.location == null){
     88        // just place the metadata in a simple wrapper
     89        Iterator values = this.metadataMap.getAll(label).iterator();
     90       
     91        while (values.hasNext()){
     92        String tag;
     93        String value = values.next().toString();
     94       
     95        tag = XMLTools.getOpenTag(GSDL3_NAMESPACE_ID, GSDL3_METADATA_TAG);
     96        tag = XMLTools.addAttribute(tag, "name", label);
     97        writer.print(tag);
     98        writer.print(value);
     99       
     100        writer.println(XMLTools.getCloseTag(this.name, GSDL3_METADATA_TAG));
     101        }
    37102    }
    38 
    39     public GSDL3Namespace(Element mdWrapTag)
    40     {   super(GSDL3_NAMESPACE_ID);
    41 
    42         NodeList childNodes = mdWrapTag.getChildNodes();
    43         for (int c = 0; c < childNodes.getLength(); c ++)
    44         {   // a metadata node
    45             if (childNodes.item(c).getNodeType() == org.w3c.dom.Node.ELEMENT_NODE)
    46             {   String metadataLabel = childNodes.item(c).getNodeName();
    47 
    48                 // cull any leading "GSDL3" tag and its colon...
    49                 if (metadataLabel.startsWith(GSDL3_NAMESPACE_ID + ":"))
    50                 {   metadataLabel = metadataLabel.substring(this.name.length() + 1);
    51                 }
    52 
    53                 // TODO: throw error: bad metadata type
    54                 if (metadataLabel.equals(GSDL3_METADATA_TAG) == false)
    55                 {   continue;
    56                 }
    57 
    58                 // Get the label - if the name isn't set, abort.
    59                 // TODO: throw error: incomplete metadata tag
    60                 metadataLabel = ((Element) childNodes.item(c)).getAttribute("name");
    61                 if (metadataLabel == null)
    62                 { continue;
    63                 }
    64 
    65                 // now build the associated value.
    66                 String metadataValue = "";
    67 
    68                 Element childElement = (Element) childNodes.item(c);
    69                 for (int i = 0; i < childElement.getChildNodes().getLength(); i ++)
    70                 {   metadataValue = metadataValue + childElement.getChildNodes().item(i).toString();
    71                 }
    72 
    73                 this.addMetadata(metadataLabel, metadataValue);
    74             }
    75         }
     103    else {
     104        String tag = XMLTools.getOpenTag("mets", "mdRef");
     105        tag = XMLTools.addAttribute(tag, "LOCTYPE", this.location.getType());
     106        tag = XMLTools.addAttribute(tag, "xlink:href", this.location.getLocation().toString());
     107        tag = XMLTools.addAttribute(tag, "MDTYPE", this.getName());
     108        tag = XMLTools.makeSingleton(tag);
     109        writer.println(tag);
    76110    }
    77 
    78     /**
    79      *  Write out a single element - this may be overloaded to provide for the
    80      *  appropriate formatting for this metadata.
    81      */
    82     protected boolean writeItem(PrintWriter writer, String label)
    83     {   if (this.location == null)
    84         { // just place the metadata in a simple wrapper
    85             Iterator values = this.metadataMap.getAll(label).iterator();
    86 
    87             while (values.hasNext())
    88             {   String tag;
    89                 String value = values.next().toString();
    90 
    91                 tag = XMLTools.getOpenTag(GSDL3_NAMESPACE_ID, GSDL3_METADATA_TAG);
    92                 tag = XMLTools.addAttribute(tag, "name", label);
    93                 writer.print(tag);
    94                 writer.print(value);
    95 
    96                 writer.println(XMLTools.getCloseTag(this.name, GSDL3_METADATA_TAG));
    97             }
    98         }
    99         else
    100         {   String tag = XMLTools.getOpenTag("mets", "mdRef");
    101             tag = XMLTools.addAttribute(tag, "LOCTYPE", this.location.getType());
    102             tag = XMLTools.addAttribute(tag, "xlink:href", this.location.getLocation().toString());
    103             tag = XMLTools.addAttribute(tag, "MDTYPE", this.getName());
    104             tag = XMLTools.makeSingleton(tag);
    105             writer.println(tag);
    106         }
    107         return true;
    108     }
     111    return true;
     112    }
    109113}
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/metadata/METSFileID.java

    r5800 r8699  
    66
    77public class METSFileID
    8 {   String id;
    9 
    10     public METSFileID()
    11     {   this.id = null;
    12     }
    13 
    14     public METSFileID(String id)
    15     {   this.id = id;
    16     }
    17 
    18     public String toString()
    19     {   return this.id;
    20     }
    21 
    22     public boolean isDefined()
    23     {   return this.id != null;
    24     }
     8{   
     9    String id;
     10   
     11    public METSFileID()
     12    {   
     13    this.id = null;
     14    }
     15   
     16    public METSFileID(String id)
     17    {   
     18    this.id = id;
     19    }
     20   
     21    public String toString()
     22    {   
     23    return this.id;
     24    }
     25   
     26    public boolean isDefined()
     27    {   
     28    return this.id != null;
     29    }
    2530}
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/metadata/METSHeader.java

    r5800 r8699  
    66public class METSHeader
    77{
    8     List agents;
    9     METSDate createDate;
    10     METSDate lastModDate;
    11 
    12     public METSHeader()
    13     {
    14         this.agents = new ArrayList();
    15     }
    16 
    17     public METSHeader(METSAgent defaultAgent)
    18     {   this();
    19         this.agents.add(defaultAgent);
    20     }
    21 
    22     public void setCreateDate(METSDate createDate)
    23     {   this.createDate = createDate;
    24     }
    25 
    26     public void setModifiedDate(METSDate modifiedDate)
    27     {   this.lastModDate = modifiedDate;
    28     }
     8    List agents;
     9    METSDate createDate;
     10    METSDate lastModDate;
     11   
     12    public METSHeader()
     13    {
     14    this.agents = new ArrayList();
     15    }
     16   
     17    public METSHeader(METSAgent defaultAgent)
     18    {   
     19    this();
     20    this.agents.add(defaultAgent);
     21    }
     22   
     23    public void setCreateDate(METSDate createDate)
     24    {   
     25    this.createDate = createDate;
     26    }
     27   
     28    public void setModifiedDate(METSDate modifiedDate)
     29    {   
     30    this.lastModDate = modifiedDate;
     31    }
    2932}
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/metadata/StructureIdentifierFactory.java

    r6287 r8699  
    99public class StructureIdentifierFactory extends AbstractIdentifierFactory
    1010{
    11   public static final String STRUCTURE_IDENTIFIER_PRELUDE = "DS";
    12 
    13   public StructureIdentifierFactory()
    14   { super(STRUCTURE_IDENTIFIER_PRELUDE);
    15   }
     11    public static final String STRUCTURE_IDENTIFIER_PRELUDE = "DS";
     12   
     13    public StructureIdentifierFactory()
     14    {
     15    super(STRUCTURE_IDENTIFIER_PRELUDE);
     16    }
    1617}
Note: See TracChangeset for help on using the changeset viewer.