View Javadoc

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one
    3    * or more contributor license agreements. See the NOTICE file
    4    * distributed with this work for additional information
    5    * regarding copyright ownership. The ASF licenses this file
    6    * to you under the Apache License, Version 2.0 (the
    7    * "License"); you may not use this file except in compliance
    8    * with the License. You may obtain a copy of the License at
    9    *
    10   * http://www.apache.org/licenses/LICENSE-2.0
    11   *
    12   * Unless required by applicable law or agreed to in writing,
    13   * software distributed under the License is distributed on an
    14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    15   * KIND, either express or implied. See the License for the
    16   * specific language governing permissions and limitations
    17   * under the License.
    18   */
    19
    20  package org.apache.ws.commons.schema;
    21
    22  import javax.xml.namespace.QName;
    23
    24
    25  /**
    26   * Class for the restriction of simpleType elements. Represents the World
    27   * Wide Web Consortium (W3C) restriction element for simple types.
    28   */
    29
    30  public class XmlSchemaSimpleTypeRestriction extends XmlSchemaSimpleTypeContent {
    31
    32      /**
    33       * Creates new XmlSchemaSimpleTypeRestriction
    34       */
    35      public XmlSchemaSimpleTypeRestriction() {
    36          facets = new XmlSchemaObjectCollection();
    37      }
    38
    39      XmlSchemaSimpleType baseType;
    40
    41      public XmlSchemaSimpleType getBaseType() {
    42          return this.baseType;
    43      }
    44
    45      public void setBaseType(XmlSchemaSimpleType baseType) {
    46          this.baseType = baseType;
    47      }
    48
    49      QName baseTypeName;
    50
    51      public QName getBaseTypeName() {
    52          return this.baseTypeName;
    53      }
    54
    55      public void setBaseTypeName(QName baseTypeName) {
    56          this.baseTypeName = baseTypeName;
    57      }
    58
    59      XmlSchemaObjectCollection facets;// = new XmlSchemaObjectCollection();
    60
    61      public XmlSchemaObjectCollection getFacets() {
    62          return this.facets;
    63      }
    64
    65      public String toString(String prefix, int tab) {
    66          String xml = new String();
    67
    68          if (!prefix.equals("") && prefix.indexOf(":") == -1)
    69              prefix += ":";
    70
    71          for (int i = 0; i < tab; i++)
    72              xml += "\t";
    73
    74          xml += "<" + prefix + "restriction ";
    75
    76          if (baseTypeName != null) {
    77              xml += "base =\"" + baseTypeName + "\">\n";
    78          } else {
    79              xml += ">\n";
    80              // inline def
    81              xml += baseType.toString(prefix, (tab + 1));
    82          }
    83
    84          xml += facets.toString(prefix, (tab + 1));
    85          for (int i = 0; i < tab; i++)
    86              xml += "\t";
    87          xml += "</" + prefix + "restriction>\n";
    88
    89
    90          return xml;
    91
    92      }
    93
    94  }