1 19 20 package org.netbeans.modules.xml.wsdl.ui.schema.visitor; 21 22 import java.util.logging.Level ; 23 import java.util.logging.Logger ; 24 import org.netbeans.modules.xml.schema.model.GlobalElement; 25 import org.netbeans.modules.xml.schema.model.LocalElement; 26 import org.netbeans.modules.xml.xam.Nameable; 27 28 33 public class SchemaElementMinMaxOccursFinderVisitor extends AbstractXSDVisitor { 34 35 private Logger mLogger = Logger.getLogger(SchemaElementAttributeFinderVisitor.class.getName()); 36 37 private int mMinOccurs; 38 39 private int mMaxOccurs; 40 41 public int getMinOccurs() { 42 return this.mMinOccurs; 43 } 44 45 public int getMaxOccurs() { 46 return this.mMaxOccurs; 47 } 48 49 public void visit(GlobalElement ge) { 50 this.mMinOccurs = 1; 51 this.mMaxOccurs = Integer.MAX_VALUE; 52 53 } 54 55 56 57 public void visit(LocalElement ge) { 58 this.mMinOccurs = ge.getMinOccursEffective(); 59 try { 60 String maxOccurs = ge.getMaxOccursEffective(); 61 this.mMaxOccurs = Integer.parseInt(maxOccurs); 62 } catch(Exception ex) { 63 mLogger.log(Level.SEVERE, "failed to find maxoccurs for " + ((Nameable)ge).getName(), ex); 64 } 65 } 66 67 } 68 | Popular Tags |