1 /**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21 
22 package org.apache.openoffice.ooxml.schema.model.attribute;
23 
24 import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
25 import org.apache.openoffice.ooxml.schema.model.base.Location;
26 import org.apache.openoffice.ooxml.schema.model.base.NodeType;
27 import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
28 import org.apache.openoffice.ooxml.schema.parser.FormDefault;
29 
30 /* Representation of a single attribute.
31  */
32 public class Attribute
33     extends AttributeBase
34 {
Attribute( final QualifiedName aName, final QualifiedName aTypeName, final String sUse, final String sDefault, final String sFixed, final FormDefault eFormDefault, final Location aLocation)35     public Attribute (
36         final QualifiedName aName,
37         final QualifiedName aTypeName,
38         final String sUse,
39         final String sDefault,
40         final String sFixed,
41         final FormDefault eFormDefault,
42         final Location aLocation)
43     {
44         super(aName, sUse, sDefault, sFixed, eFormDefault, aLocation);
45         maTypeName = aTypeName;
46     }
47 
48 
49 
50 
GetTypeName()51     public QualifiedName GetTypeName ()
52     {
53         return maTypeName;
54     }
55 
56 
57 
58 
59     @Override
GetNodeType()60     public NodeType GetNodeType ()
61     {
62         return NodeType.Attribute;
63     }
64 
65 
66 
67 
68     @Override
AcceptVisitor(final INodeVisitor aVisitor)69     public void AcceptVisitor (final INodeVisitor aVisitor)
70     {
71         aVisitor.Visit(this);
72     }
73 
74 
75 
76 
77     @Override
toString()78     public String toString ()
79     {
80         return String.format(
81             "attribute %s of type %s, %s",
82             GetName().GetDisplayName(),
83             maTypeName.GetDisplayName(),
84             super.toString());
85     }
86 
87 
88 
89 
90     private final QualifiedName maTypeName;
91 }
92