home *** CD-ROM | disk | FTP | other *** search
- package mx.rpc.xml
- {
- import mx.utils.URLUtil;
- import mx.utils.object_proxy;
-
- use namespace object_proxy;
-
- public class SchemaProcessor
- {
- private var _schemaManager:SchemaManager;
-
- protected var strictOccurenceBounds:Boolean = false;
-
- public function SchemaProcessor()
- {
- super();
- }
-
- protected function getMinOccurs(param1:XML) : uint
- {
- var _loc2_:uint = 1;
- var _loc3_:String = getAttributeFromNode("minOccurs",param1);
- if(_loc3_ != null)
- {
- _loc2_ = parseInt(_loc3_);
- }
- return _loc2_;
- }
-
- protected function getSingleElementFromNode(param1:XML, ... rest) : XML
- {
- var _loc4_:XML = null;
- var _loc5_:QName = null;
- var _loc3_:XMLList = param1.elements();
- for each(_loc4_ in _loc3_)
- {
- if(!(rest != null && rest.length > 0))
- {
- return _loc4_;
- }
- for each(_loc5_ in rest)
- {
- if(_loc4_.name() == _loc5_)
- {
- return _loc4_;
- }
- }
- }
- return null;
- }
-
- public function get schemaManager() : SchemaManager
- {
- if(_schemaManager == null)
- {
- _schemaManager = new SchemaManager();
- }
- return _schemaManager;
- }
-
- protected function get constants() : SchemaConstants
- {
- return schemaManager.schemaConstants;
- }
-
- protected function getAttributeFromNode(param1:*, param2:XML) : String
- {
- var _loc3_:String = null;
- var _loc4_:XMLList = null;
- if(param2 != null)
- {
- _loc4_ = param2.attribute(param1);
- if(_loc4_.length() > 0)
- {
- _loc3_ = _loc4_[0];
- }
- }
- return _loc3_;
- }
-
- public function isBuiltInType(param1:QName) : Boolean
- {
- var _loc2_:String = param1 != null ? param1.uri : null;
- if(_loc2_ != null)
- {
- if(URLUtil.urisEqual(_loc2_,SchemaConstants.XSD_URI_1999) || URLUtil.urisEqual(_loc2_,SchemaConstants.XSD_URI_2000) || URLUtil.urisEqual(_loc2_,SchemaConstants.XSD_URI_2001))
- {
- return true;
- }
- }
- return false;
- }
-
- protected function getMaxOccurs(param1:XML) : uint
- {
- var _loc2_:uint = 1;
- var _loc3_:String = getAttributeFromNode("maxOccurs",param1);
- if(_loc3_ != null)
- {
- _loc2_ = _loc3_ == "unbounded" ? uint.MAX_VALUE : uint(parseInt(_loc3_));
- }
- return _loc2_;
- }
-
- public function reset() : void
- {
- schemaManager.reset();
- }
-
- public function set schemaManager(param1:SchemaManager) : void
- {
- _schemaManager = param1;
- }
-
- public function getValueOccurence(param1:*) : uint
- {
- var _loc2_:uint = 1;
- if(param1 != null && TypeIterator.isIterable(param1))
- {
- _loc2_ = TypeIterator.getLength(param1);
- }
- else if(param1 === undefined)
- {
- _loc2_ = 0;
- }
- return _loc2_;
- }
- }
- }
-
-