本文整理汇总了PHP中core_kernel_classes_Class::getOnePropertyValue方法的典型用法代码示例。如果您正苦于以下问题:PHP core_kernel_classes_Class::getOnePropertyValue方法的具体用法?PHP core_kernel_classes_Class::getOnePropertyValue怎么用?PHP core_kernel_classes_Class::getOnePropertyValue使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类core_kernel_classes_Class
的用法示例。
在下文中一共展示了core_kernel_classes_Class::getOnePropertyValue方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testHardModel
public function testHardModel()
{
$this->hardify();
$referencer = ResourceReferencer::singleton();
$propertyProxy = PropertyProxy::singleton();
$proxy = ResourceProxy::singleton();
$domainProperty = new core_kernel_classes_Property(RDFS_DOMAIN);
$rangeProperty = new core_kernel_classes_Property(RDFS_RANGE);
$literalClass = new core_kernel_classes_Class(RDFS_LITERAL);
$subClassOfProperty = new core_kernel_classes_Property(RDFS_SUBCLASSOF);
$this->assertTrue($this->targetActorsProperty->exists());
$this->assertTrue($this->targetMovieClass->exists());
$this->assertTrue($this->targetWorkClass->isSubclassOf($this->taoClass));
$this->assertTrue($this->targetWorkClass->getOnePropertyValue($subClassOfProperty)->getUri() == $this->taoClass->getUri());
$this->assertTrue($referencer->isClassReferenced($this->targetWorkClass));
$this->assertFalse(is_a($proxy->getImpToDelegateTo($this->targetWorkClass), 'core_kernel_persistence_smoothsql_Class'));
$this->assertFalse(is_a($proxy->getImpToDelegateTo($this->targetMovieClass), 'core_kernel_persistence_smoothsql_Class'));
$this->assertTrue($this->targetAuthorProperty->getOnePropertyValue($domainProperty)->getUri() == $this->targetWorkClass->getUri());
$this->assertTrue($this->targetAuthorProperty->getOnePropertyValue($rangeProperty)->getUri() == RDFS_LITERAL);
$this->assertTrue($this->targetMovieClass->isSubclassOf($this->targetWorkClass));
$this->assertTrue($this->targetMovieClass->getOnePropertyValue($subClassOfProperty)->getUri() == $this->targetWorkClass->getUri());
$this->assertTrue($referencer->isClassReferenced($this->targetMovieClass));
$this->assertTrue($this->targetProducerProperty->getOnePropertyValue($domainProperty)->getUri() == $this->targetMovieClass->getUri());
$this->assertTrue($this->targetProducerProperty->getOnePropertyValue($rangeProperty)->getUri() == RDFS_LITERAL);
$this->assertTrue($this->targetActorsProperty->getOnePropertyValue($domainProperty)->getUri() == $this->targetMovieClass->getUri());
$this->assertTrue($this->targetActorsProperty->getOnePropertyValue($rangeProperty)->getUri() == RDFS_LITERAL);
$this->assertTrue($this->targetRelatedMoviesProperty->getOnePropertyValue($domainProperty)->getUri() == $this->targetMovieClass->getUri());
$this->assertTrue($this->targetRelatedMoviesProperty->getOnePropertyValue($rangeProperty)->getUri() == $this->targetMovieClass->getUri());
$parentClasses = $this->targetMovieClass->getParentClasses();
$this->assertEquals(1, count($parentClasses));
$this->assertTrue(array_key_exists($this->targetWorkClass->getUri(), $parentClasses));
$prop = new core_kernel_classes_Property($this->targetRelatedMoviesProperty);
$this->assertTrue($prop->isMultiple());
}
示例2: getResultStorage
/**
* Returns the storage engine of the result server
*
* @param string $deliveryId
* @throws \common_exception_Error
* @return \taoResultServer_models_classes_ReadableResultStorage
*/
public function getResultStorage($deliveryId)
{
if (is_null($deliveryId)) {
throw new \common_exception_Error(__('This delivery doesn\'t exists'));
}
$delivery = $this->getResource($deliveryId);
$deliveryResultServer = $delivery->getOnePropertyValue($this->getProperty(self::PROPERTY_RESULT_SERVER));
if (is_null($deliveryResultServer)) {
throw new \common_exception_Error(__('This delivery has no Result Server'));
}
$resultServerModel = $deliveryResultServer->getPropertyValues($this->getProperty(TAO_RESULTSERVER_MODEL_PROP));
if (is_null($resultServerModel)) {
throw new \common_exception_Error(__('This delivery has no readable Result Server'));
}
$implementations = array();
foreach ($resultServerModel as $model) {
$model = new \core_kernel_classes_Class($model);
/** @var $implementationClass \core_kernel_classes_Literal*/
$implementationClass = $model->getOnePropertyValue($this->getProperty(TAO_RESULTSERVER_MODEL_IMPL_PROP));
if (!is_null($implementationClass) && class_exists($implementationClass->literal)) {
$className = $implementationClass->literal;
$implementations[] = new $className();
}
}
if (empty($implementations)) {
throw new \common_exception_Error(__('This delivery has no readable Result Server'));
} elseif (count($implementations) == 1) {
return reset($implementations);
} else {
return new StorageAggregation($implementations);
}
}
示例3: getImplementationClass
private function getImplementationClass($delivery)
{
if (is_null($delivery)) {
throw new \common_exception_Error(__('This delivery doesn\'t exists'));
}
$deliveryResultServer = $delivery->getOnePropertyValue(new \core_kernel_classes_Property(TAO_DELIVERY_RESULTSERVER_PROP));
if (is_null($deliveryResultServer)) {
throw new \common_exception_Error(__('This delivery has no Result Server'));
}
$resultServerModel = $deliveryResultServer->getPropertyValues(new \core_kernel_classes_Property(TAO_RESULTSERVER_MODEL_PROP));
if (is_null($resultServerModel)) {
throw new \common_exception_Error(__('This delivery has no readable Result Server'));
}
foreach ($resultServerModel as $model) {
$model = new \core_kernel_classes_Class($model);
/** @var $implementationClass \core_kernel_classes_Literal*/
$implementationClass = $model->getOnePropertyValue(new \core_kernel_classes_Property(TAO_RESULTSERVER_MODEL_IMPL_PROP));
if (!is_null($implementationClass) && class_exists($implementationClass->literal) && in_array('taoResultServer_models_classes_ReadableResultStorage', class_implements($implementationClass->literal))) {
$className = $implementationClass->literal;
if (!class_exists($className)) {
throw new \common_exception_Error('readable resultinterface implementation ' . $className . ' not found');
}
return new $className();
}
}
throw new \common_exception_Error(__('This delivery has no readable Result Server'));
}