Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: com/virtuosotechnologies/asaph/standardmodel/StdStringField.java


1   /*
2   ================================================================================
3   
4     FILE:  StdStringField.java
5     
6     PROJECT:
7     
8       Asaph
9     
10    CONTENTS:
11    
12      Standard implementation of StringField
13    
14    PROGRAMMERS:
15    
16      Daniel Azuma (DA)  <dazuma@kagi.com>
17    
18    COPYRIGHT:
19    
20      Copyright (C) 2003  Daniel Azuma  (dazuma@kagi.com)
21      
22      This program is free software; you can redistribute it and/or
23      modify it under the terms of the GNU General Public License as
24      published by the Free Software Foundation; either version 2
25      of the License, or (at your option) any later version.
26      
27      This program is distributed in the hope that it will be useful,
28      but WITHOUT ANY WARRANTY; without even the implied warranty of
29      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30      GNU General Public License for more details.
31      
32      You should have received a copy of the GNU General Public
33      License along with this program; if not, write to
34        Free Software Foundation, Inc.
35        59 Temple Place, Suite 330
36        Boston, MA 02111-1307 USA
37  
38  ================================================================================
39  */
40  
41  
42  package com.virtuosotechnologies.asaph.standardmodel;
43  
44  
45  import java.io.IOException;
46  import org.xml.sax.SAXException;
47  import org.xml.sax.ErrorHandler;
48  import org.xml.sax.Locator;
49  
50  import com.virtuosotechnologies.lib.xml.XMLUnparser;
51  
52  import com.virtuosotechnologies.asaph.model.StringField;
53  
54  
55  /**
56   * Standard implementation of StringField
57   */
58  /*package*/ class StdStringField
59  extends BaseString
60  implements
61    StringField
62  {
63    private String name_;
64    
65    
66    /*package*/ StdStringField(
67      BaseSongMember parent,
68      String name,
69      String value)
70    {
71      super(parent, value);
72      name_ = name;
73    }
74    
75    
76    /*package*/ void unparse(
77      XMLUnparser unparser)
78    throws
79      IOException
80    {
81      unparser.startSingleLineElement(XMLConstants.STRINGFIELD_ELEMENT);
82      unparser.addAttribute(XMLConstants.FIELD_NAME_ATTRIBUTE, name_);
83      unparser.addString(getString());
84      unparser.endElement(XMLConstants.STRINGFIELD_ELEMENT);
85    }
86    
87    
88    /*package*/ class ParseHandler
89    extends ParseHandlerBase
90    {
91      /*package*/ ParseHandler(
92        ErrorHandler errorHandler,
93        Locator locator,
94        String localElement)
95      {
96        super(errorHandler, locator, localElement);
97      }
98      
99      /*package*/ void localCharacters(
100       char[] chs,
101       int start,
102       int length)
103     throws
104       SAXException
105     {
106       setString(getString()+new String(chs, start, length), null);
107     }
108   }
109   
110   
111   //-------------------------------------------------------------------------
112   // Methods of Field
113   //-------------------------------------------------------------------------
114   
115   /**
116    * Get the name of the field.
117    *
118    * @return the name
119    */
120   public String getFieldName()
121   {
122     return name_;
123   }
124 }