public function processInputControlSpecification(\SimpleXMLElement $specification) {
        $collection = array();
        //Create the input type class for each element
        foreach($specification->inputControl as $key => $value) {
            //Get the class of the type where the class name is the input type in the specified namespace
            if ($value->type == 'bool') {
                $value->type = 'checkbox';
            }
            $inputClass = $this->inputControlTypeNamespace . ucfirst($value->type);
            //Try to init the object
            try {
                $collection[] = new $inputClass(
                    (string)$value->id,
                    (string)$value->label,
                    filter_var($value->mandatory, FILTER_VALIDATE_BOOLEAN),
                    filter_var($value->readOnly, FILTER_VALIDATE_BOOLEAN),
                    (string)$value->type,
                    (string)$value->uri,
                    filter_var($value->visible, FILTER_VALIDATE_BOOLEAN),
                    (object)$value->state,
                    $this->getICFrom,
                    $this->optionsHandler
                );
            } catch (\Exception $e) {
                //Missing an input type class
                throw $e;
            }
        }

        //Return the collection
        return $collection;
    }
public function processInputControlSpecification(\SimpleXMLElement $specification) {
        $collection = array();
        //Create the input type class for each element
        foreach($specification->inputControl as $key => $value) {
            //Get the class of the type where the class name is the input type in the specified namespace
            if ($value->type == 'bool') {
                $value->type = 'checkbox';
            }
            $inputClass = $this->inputControlTypeNamespace . ucfirst($value->type);
            //Try to init the object
            try {
                $collection[] = new $inputClass(
                    (string)$value->id,
                    (string)$value->label,
                    filter_var($value->mandatory, FILTER_VALIDATE_BOOLEAN),
                    filter_var($value->readOnly, FILTER_VALIDATE_BOOLEAN),
                    (string)$value->type,
                    (string)$value->uri,
                    filter_var($value->visible, FILTER_VALIDATE_BOOLEAN),
                    (object)$value->state,
                    $this->getICFrom,
                    $this->optionsHandler
                );
            } catch (\Exception $e) {
                //Missing an input type class
                throw $e;
            }
        }

        //Return the collection
        return $collection;
    }
public function processInputControlSpecification ( \ SimpleXMLElement $ specification ) { $ collection = array ( ) ; //Create the input type class for each element foreach ( $ specification -> inputControl as $ key => $ value ) { //Get the class of the type where the class name is the input type in the specified namespace if ( $ value -> type == 'bool' ) { $ value -> type = 'checkbox' ; } $ inputClass = $ this -> inputControlTypeNamespace . ucfirst ( $ value -> type ) ; //Try to init the object try { $ collection [ ] = new $ inputClass ( ( string ) $ value -> id , ( string ) $ value -> label , filter_var ( $ value -> mandatory , FILTER_VALIDATE_BOOLEAN ) , filter_var ( $ value -> readOnly , FILTER_VALIDATE_BOOLEAN ) , ( string ) $ value -> type , ( string ) $ value -> uri , filter_var ( $ value -> visible , FILTER_VALIDATE_BOOLEAN ) , ( object ) $ value -> state , $ this -> getICFrom , $ this -> optionsHandler ) ; } catch ( \ Exception $ e ) { //Missing an input type class throw $ e ; } } //Return the collection return $ collection ; }
Processes the XML return from the getInputControls call in the client
and constructs the collection of input controls as needed

@param  SimpleXMLElement $specification XML detailing the reports input controls

@return array                           Collection of the reports input controls
Processes the XML return from the getInputControls call in the client and constructs the collection of input controls as needed