xref: /trunk/main/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleType.java (revision 3309286857f19787ae62bd793a98b5af4edd2ad3)
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.simple;
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.Node;
27 import org.apache.openoffice.ooxml.schema.model.base.NodeType;
28 import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
29 
30 /** Representation of the 'simpleType' XML schema element.
31  *  Simple types are used for attributes or the text of elements.
32  */
33 public class SimpleType
34     extends Node
35 {
SimpleType( final Node aParent, final QualifiedName aName, final Location aLocation)36     public SimpleType (
37         final Node aParent,
38         final QualifiedName aName,
39         final Location aLocation)
40     {
41         super(aParent, aName, aLocation);
42         maFinalValues = null;
43     }
44 
45 
46 
47 
48     @Override
GetNodeType()49     public NodeType GetNodeType ()
50     {
51         return NodeType.SimpleType;
52     }
53 
54 
55 
56 
SetFinal(final String[] aFinalValues)57     public void SetFinal (final String[] aFinalValues)
58     {
59         maFinalValues = aFinalValues;
60     }
61 
62 
63 
64 
IsFinal(final String sCatgery)65     public boolean IsFinal (final String sCatgery)
66     {
67         if (maFinalValues != null)
68         {
69             for (final String sFinal : maFinalValues)
70             {
71                 if (sFinal.equals(sCatgery))
72                     return true;
73                 else if (sFinal.equals("#all"))
74                     return true;
75             }
76         }
77         return false;
78     }
79 
80 
81 
82 
83     @Override
AcceptVisitor(final INodeVisitor aVisitor)84     public void AcceptVisitor (final INodeVisitor aVisitor)
85     {
86         aVisitor.Visit(this);
87     }
88 
89 
90 
91 
92     @Override
toString()93     public String toString ()
94     {
95         return "simple type "+GetName().GetDisplayName();
96     }
97 
98 
99 
100 
101     private String[] maFinalValues;
102 }
103