예제 #1
0
    public function testGetPropertyFromNode()
    {
        $xml = '<root>
					<row>
						<CATALOG_NAME>FoodMart</CATALOG_NAME>
						<SCHEMA_NAME>FoodMart</SCHEMA_NAME>
						<CUBE_NAME>Sales</CUBE_NAME>
						<CUBE_TYPE>CUBE</CUBE_TYPE>
						<LAST_SCHEMA_UPDATE>2011-05-07T00:52:12</LAST_SCHEMA_UPDATE>
						<IS_DRILLTHROUGH_ENABLED>true</IS_DRILLTHROUGH_ENABLED>
						<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
						<IS_LINKABLE>false</IS_LINKABLE>
						<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
						<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
					</row>
				</root>';
        $document = new \DOMDocument();
        $document->loadXML($xml);
        $node = $document->getElementsByTagName('row')->item(0);
        $this->assertEquals(MetadataBase::getPropertyFromNode($node, 'CATALOG_NAME', true), 'FoodMart');
        $this->assertEquals(MetadataBase::getPropertyFromNode($node, 'CATALOG_NAME', false), 'FoodMart');
        $this->assertEquals(MetadataBase::getPropertyFromNode($node, 'CATALOG_NAME'), 'FoodMart');
        $this->assertEquals(MetadataBase::getPropertyFromNode($node, 'XXXX', true), null);
        $this->assertEquals(MetadataBase::getPropertyFromNode($node, 'XXXX'), null);
        try {
            $result = MetadataBase::getPropertyFromNode($node, 'XXXX', false);
        } catch (MetadataException $e) {
            return;
        }
        $this->fail('An expected exception has not been raised.');
    }
예제 #2
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->name = parent::getPropertyFromNode($node, 'CATALOG_NAME', false);
     $this->description = parent::getPropertyFromNode($node, 'DESCRIPTION');
     $roles = parent::getPropertyFromNode($node, 'ROLES');
     $this->roles = explode(",", $roles);
 }
예제 #3
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  *
  */
 public function hydrate(\DOMNode $node)
 {
     $this->cubeName = MetadataBase::getPropertyFromNode($node, 'CubeName');
     $this->rows = $this->hydrateRows($node);
     $this->columns = $this->hydrateColumns($node);
 }
예제 #4
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->cubeName = parent::getPropertyFromNode($node, 'CUBE_NAME', false);
     $this->dimensionUniqueName = parent::getPropertyFromNode($node, 'DIMENSION_UNIQUE_NAME', false);
     $this->name = parent::getPropertyFromNode($node, 'HIERARCHY_NAME', false);
     $this->uniqueName = parent::getPropertyFromNode($node, 'HIERARCHY_UNIQUE_NAME', false);
     $this->description = parent::getPropertyFromNode($node, 'DESCRIPTION');
     $this->caption = parent::getPropertyFromNode($node, 'HIERARCHY_CAPTION');
     $this->cardinality = parent::getPropertyFromNode($node, 'HIERARCHY_CARDINALITY');
     $this->defaultMemberUniqueName = parent::getPropertyFromNode($node, 'DEFAULT_MEMBER');
     $this->structure = parent::getPropertyFromNode($node, 'STRUCTURE');
     $this->isVirtual = parent::getPropertyFromNode($node, 'IS_VIRTUAL');
     $this->isReadWrite = parent::getPropertyFromNode($node, 'IS_READWRITE');
     $this->ordinal = parent::getPropertyFromNode($node, 'HIERARCHY_ORDINAL');
     $this->parentChild = parent::getPropertyFromNode($node, 'PARENT_CHILD');
 }
예제 #5
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->name = parent::getPropertyFromNode($node, 'CUBE_NAME', false);
     $this->description = parent::getPropertyFromNode($node, 'DESCRIPTION');
     $this->type = parent::getPropertyFromNode($node, 'CUBE_TYPE');
 }
예제 #6
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  *
  */
 public function hydrate(\DOMNode $node)
 {
     $this->cubeName = MetadataBase::getPropertyFromNode($node, 'CubeName');
     $this->hierarchiesName = self::hydrateAxesInfos($node);
     $this->cellAxisSet = self::hydrateAxesSet($node);
     $this->cellDataSet = self::hydrateDataSet($node);
 }
예제 #7
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->cubeName = parent::getPropertyFromNode($node, 'CUBE_NAME', false);
     $this->name = parent::getPropertyFromNode($node, 'DIMENSION_NAME', false);
     $this->uniqueName = parent::getPropertyFromNode($node, 'DIMENSION_UNIQUE_NAME', false);
     $this->description = parent::getPropertyFromNode($node, 'DESCRIPTION');
     $this->caption = parent::getPropertyFromNode($node, 'DIMENSION_CAPTION');
     $this->ordinal = parent::getPropertyFromNode($node, 'DIMENSION_ORDINAL');
     $this->type = parent::getPropertyFromNode($node, 'DIMENSION_TYPE');
     $this->cardinality = parent::getPropertyFromNode($node, 'DIMENSION_CARDINALITY');
     $this->defaultHierarchyUniqueName = parent::getPropertyFromNode($node, 'DEFAULT_HIERARCHY');
     $this->isVirtual = parent::getPropertyFromNode($node, 'IS_VIRTUAL');
     $this->isReadWrite = parent::getPropertyFromNode($node, 'IS_READWRITE');
     $this->uniqueSettings = parent::getPropertyFromNode($node, 'DIMENSION_UNIQUE_SETTINGS');
     $this->isVisible = parent::getPropertyFromNode($node, 'DIMENSION_IS_VISIBLE');
 }
예제 #8
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->name = parent::getPropertyFromNode($node, 'DataSourceName', false);
     $this->description = parent::getPropertyFromNode($node, 'DataSourceDescription');
     $this->url = parent::getPropertyFromNode($node, 'URL');
     $this->dataSourceInfo = parent::getPropertyFromNode($node, 'DataSourceInfo', false);
     $this->providerName = parent::getPropertyFromNode($node, 'ProviderName');
     $this->providerType = parent::getPropertyFromNode($node, 'ProviderType');
     $this->authenticationMode = parent::getPropertyFromNode($node, 'AuthenticationMode');
 }
예제 #9
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->name = parent::getPropertyFromNode($node, 'MEASURE_NAME', false);
     $this->uniqueName = parent::getPropertyFromNode($node, 'MEASURE_UNIQUE_NAME', false);
     $this->description = parent::getPropertyFromNode($node, 'DESCRIPTION');
     $this->caption = parent::getPropertyFromNode($node, 'MEASURE_CAPTION');
     $this->aggregator = parent::getPropertyFromNode($node, 'MEASURE_AGGREGATOR');
     $this->dataType = parent::getPropertyFromNode($node, 'DATA_TYPE');
     $this->isVisible = parent::getPropertyFromNode($node, 'MEASURE_IS_VISIBLE');
 }
예제 #10
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node)
 {
     $this->value = MetadataBase::getPropertyFromNode($node, 'Value', true);
     $this->formatedValue = MetadataBase::getPropertyFromNode($node, 'FmtValue', true);
     $this->formatString = MetadataBase::getPropertyFromNode($node, 'FormatString', true);
 }
예제 #11
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node)
 {
     $this->memberUniqueName = MetadataBase::getPropertyFromNode($node, 'UName', false);
     $this->memberCaption = MetadataBase::getPropertyFromNode($node, 'Caption', false);
     $this->levelUniqueName = MetadataBase::getPropertyFromNode($node, 'LName', false);
     $this->levelNumber = MetadataBase::getPropertyFromNode($node, 'LNum', false);
     $this->displayInfo = MetadataBase::getPropertyFromNode($node, 'DisplayInfo');
     // rajouté pour lever l'ambiguïté liée aux dimension partagées
     $this->dimensionName = $node->getAttribute('Hierarchy');
     $this->calcLevelTrueName();
     $this->calcMemberTrueName();
 }
예제 #12
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->cubeName = parent::getPropertyFromNode($node, 'CUBE_NAME', false);
     $this->dimensionUniqueName = parent::getPropertyFromNode($node, 'DIMENSION_UNIQUE_NAME', false);
     $this->hierarchyUniqueName = parent::getPropertyFromNode($node, 'HIERARCHY_UNIQUE_NAME', false);
     $this->name = parent::getPropertyFromNode($node, 'LEVEL_NAME', false);
     $this->uniqueName = parent::getPropertyFromNode($node, 'LEVEL_UNIQUE_NAME', false);
     $this->description = parent::getPropertyFromNode($node, 'DESCRIPTION');
     $this->caption = parent::getPropertyFromNode($node, 'LEVEL_CAPTION');
     $this->number = parent::getPropertyFromNode($node, 'LEVEL_NUMBER');
     $this->cardinality = parent::getPropertyFromNode($node, 'LEVEL_CARDINALITY');
     $this->type = parent::getPropertyFromNode($node, 'LEVEL_TYPE');
     $this->customRollupSettings = parent::getPropertyFromNode($node, 'CUSTOM_ROLLUP_SETTINGS');
     $this->uniqueSettings = parent::getPropertyFromNode($node, 'LEVEL_UNIQUE_SETTINGS');
     $this->isVisible = parent::getPropertyFromNode($node, 'LEVEL_IS_VISIBLE');
 }
예제 #13
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node)
 {
     $this->memberUniqueName = MetadataBase::getPropertyFromNode($node, 'UName', false);
     $this->memberCaption = MetadataBase::getPropertyFromNode($node, 'Caption', false);
     $this->levelUniqueName = MetadataBase::getPropertyFromNode($node, 'LName', false);
     $this->levelNumber = MetadataBase::getPropertyFromNode($node, 'LNum', false);
     $this->displayInfo = MetadataBase::getPropertyFromNode($node, 'DisplayInfo');
 }
예제 #14
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->name = parent::getPropertyFromNode($node, 'SCHEMA_NAME', false);
 }
예제 #15
0
 /**
  * Hydrate Element
  *
  * @param DOMNode $node Node
  * @param Connection $connection Connection
  *
  */
 public function hydrate(\DOMNode $node, ConnectionInterface $connection)
 {
     $this->connection = $connection;
     $this->name = parent::getPropertyFromNode($node, 'MEMBER_NAME', false);
     $this->uniqueName = parent::getPropertyFromNode($node, 'MEMBER_UNIQUE_NAME', false);
     $this->description = parent::getPropertyFromNode($node, 'DESCRIPTION');
     $this->ordinal = parent::getPropertyFromNode($node, 'MEMBER_ORDINAL');
     $this->type = parent::getPropertyFromNode($node, 'MEMBER_TYPE');
     $this->caption = parent::getPropertyFromNode($node, 'MEMBER_CAPTION');
     $this->childrenCardinality = parent::getPropertyFromNode($node, 'CHILDREN_CARDINALITY');
     $this->parentLevel = parent::getPropertyFromNode($node, 'PARENT_LEVEL');
     $this->parentCount = parent::getPropertyFromNode($node, 'PARENT_COUNT');
     $this->depth = parent::getPropertyFromNode($node, 'DEPTH');
 }