Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Option.java
   *
   * Copyright 2008 Mark Logic Corporation.
   * Portions Copyright 2007 Sun Microsystems, Inc.
   * All rights reserved.
   *
   * The contents of this file are subject to the terms of either the GNU
   * General Public License Version 2 only ("GPL") or the Common
  * Development and Distribution License("CDDL") (collectively, the
  * "License"). You may not use this file except in compliance with the
  * License. You can obtain a copy of the License at
  * https://xproc.dev.java.net/public/CDDL+GPL.html or
  * docs/CDDL+GPL.txt in the distribution. See the License for the
  * specific language governing permissions and limitations under the
  * License. When distributing the software, include this License Header
  * Notice in each file and include the License file at docs/CDDL+GPL.txt.
  */
 
 package com.xmlcalabash.model;
 

Author(s):
ndw
 
 public class Option extends EndPoint implements ComputableValue {
     private QName name = null;
     private boolean required = false;
     private String select = null;
     private String type = null;
     private XdmNode typeNode = null;
     private Vector<NamespaceBindingnsBindings = new Vector<NamespaceBinding>();

    
Creates a new instance of Option
 
     public Option(XProcRuntime xprocXdmNode node) {
         super(xproc,node);
     }
 
     public void setName(QName name) {
         this. = name;
     }
     
     public QName getName() {
         return ;
     }
 
     public void setType(String typeXdmNode node) {
         this. = type;
          = node;
     }
 
     public String getType() {
         return ;
     }
 
     public QName getTypeAsQName() {
         return new QName(,);
     }
 
     public void setRequired(String required) {
         this. = "true".equals(required);
     }
 
     public void setRequired(boolean required) {
         this. = required;
     }
 
     public boolean getRequired() {
         return ;
     }
 
     public void setSelect(String select) {
         this. = select;
     }
     
     public String getSelect() {
         return ;
     }
 
     public void addNamespaceBinding(NamespaceBinding binding) {
         .add(binding);
     }
 
         return ;
     }
 
     public boolean valid(Environment env) {
         boolean valid = true;
 
         if (.size() > 1) {
             error("Option can have at most one binding.", XProcConstants.dynamicError(8));
             valid = false;
        }
        if ( && ( != null)) {
            error("You can't specify a default value on a required option", XProcConstants.staticError(17));
        }
        
        return valid;
    }
    public String toString() {
        if (..equals(.getNodeName())) {
            return "with-option " + ;
        } else {
            return "option " + ;
        }
    }
    protected void dump(int depth) {
        String indent = "";
        for (int count = 0; count < depthcount++) {
            indent += " ";
        }
        if ( != null) {
            ..println(indent + "option " + getName() + " select=" + );
        } else {
            ..println(indent + "option " + getName());
            if (getBinding().size() == 0) {
                if (..equals(.getNodeName())) {
                    // System.err.println(indent + "  no binding allowed");
                } else {
                    ..println(indent + "  no binding");
                }
            }
        }
        for (Binding binding : getBinding()) {
            binding.dump(depth+2);
        }
    }
New to GrepCode? Check out our FAQ X