当前位置: 首页>>代码示例>>PHP>>正文


PHP Factory::get方法代码示例

本文整理汇总了PHP中Factory::get方法的典型用法代码示例。如果您正苦于以下问题:PHP Factory::get方法的具体用法?PHP Factory::get怎么用?PHP Factory::get使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Factory的用法示例。


在下文中一共展示了Factory::get方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: execute

 /**
  * Executes this query and returns a QueryResult object.
  *
  * @return \PHPCR\Query\QueryInterface a QueryResult object
  * @throws \PHPCR\Query\InvalidQueryException if the query contains an unbound variable.
  * @throws \PHPCR\RepositoryException if an error occurs
  * @api
  */
 public function execute()
 {
     $transport = $this->objectmanager->getTransport();
     $rawData = $transport->querySQL($this->statement, $this->limit, $this->offset);
     $queryResult = $this->factory->get('Query\\QueryResult', array($rawData, $this->objectmanager));
     return $queryResult;
 }
开发者ID:rambo,项目名称:jackalope,代码行数:15,代码来源:SqlQuery.php

示例2: __construct

 /** creates the corresponding workspace */
 public function __construct($factory, Repository $repository, $workspaceName, \PHPCR\SimpleCredentials $credentials, TransportInterface $transport)
 {
     $this->factory = $factory;
     $this->repository = $repository;
     $this->objectManager = $this->factory->get('ObjectManager', array($transport, $this));
     $this->workspace = $this->factory->get('Workspace', array($this, $this->objectManager, $workspaceName));
     $this->credentials = $credentials;
 }
开发者ID:rambo,项目名称:jackalope,代码行数:9,代码来源:Session.php

示例3: createQuery

 /**
  * Creates a new query by specifying the query statement itself and the language
  * in which the query is stated. The $language must be a string from among
  * those returned by QueryManager.getSupportedQueryLanguages().
  *
  * @param string $statement
  * @param string $language
  * @return \PHPCR\Query\QueryInterface a Query object
  * @throws \PHPCR\Query\InvalidQueryException if the query statement is syntactically invalid or the specified language is not supported
  * @throws \PHPCR\RepositoryException if another error occurs
  * @api
  */
 public function createQuery($statement, $language)
 {
     switch ($language) {
         case \PHPCR\Query\QueryInterface::JCR_SQL2:
             return $this->factory->get('Query\\SqlQuery', array($statement, $this->objectmanager));
         case \PHPCR\Query\QueryInterface::JCR_JQOM:
             throw new NotImplementedException();
         default:
             throw new \PHPCR\Query\InvalidQueryException("No such query language: {$language}");
     }
 }
开发者ID:rambo,项目名称:jackalope,代码行数:23,代码来源:QueryManager.php

示例4: login

 /**
  * Authenticates the user using the supplied credentials. If workspaceName is recognized as the
  * name of an existing workspace in the repository and authorization to access that workspace
  * is granted, then a new Session object is returned. workspaceName is a single string token.
  *
  * null credentials are currently not supported
  *
  * If workspaceName is null, a default workspace is automatically selected by the repository
  * implementation. This may, for example, be the "home workspace" of the user whose credentials
  * were passed, though this is entirely up to the configuration and implementation of the
  * repository. Alternatively, it may be a "null workspace" that serves only to provide the
  * method Workspace.getAccessibleWorkspaceNames(), allowing the client to select from among
  * available "real" workspaces.
  *
  * Note: The Java API defines this method with multiple differing signatures.
  *
  * @param \PHPCR\CredentialsInterface $credentials The credentials of the user
  * @param string $workspaceName the name of a workspace
  * @return \PHPCR\SessionInterface a valid session for the user to access the repository
  * @throws \PHPCR\LoginException if authentication or authorization (for the specified workspace) fails
  * @throws \PHPCR\NoSuchWorkspacexception if the specified workspaceName is not recognized
  * @throws \PHPCR\RepositoryException if another error occurs
  * @api
  */
 public function login($credentials = null, $workspaceName = null)
 {
     if ($workspaceName == null) {
         $workspaceName = 'default';
     }
     //TODO: can default workspace have other name?
     if (!$this->transport->login($credentials, $workspaceName)) {
         throw new \PHPCR\RepositoryException('transport failed to login without telling why');
     }
     $session = $this->factory->get('Session', array($this, $workspaceName, $credentials, $this->transport));
     return $session;
 }
开发者ID:rambo,项目名称:jackalope,代码行数:36,代码来源:Repository.php

示例5: __construct

 /**
  * Initializes the created object.
  *
  * @param object $factory  an object factory implementing "get" as described in \jackalope\Factory
  * @param TransportInterface $transport
  */
 public function __construct($factory, TransportInterface $transport)
 {
     $this->factory = $factory;
     $this->transport = $transport;
     $this->namespaceManager = $this->factory->get('NamespaceManager', array($this->defaultNamespaces));
     $namespaces = $transport->getNamespaces();
     foreach ($namespaces as $prefix => $uri) {
         if (!array_key_exists($prefix, $this->defaultNamespaces)) {
             $this->userNamespaces[$prefix] = $uri;
         }
     }
 }
开发者ID:rambo,项目名称:jackalope,代码行数:18,代码来源:NamespaceRegistry.php

示例6: fromXml

 /**
  * Reads properties from XML
  * @param   DOMElement  $node   The dom to parse properties from
  */
 protected function fromXml(DOMElement $node)
 {
     $this->name = $node->getAttribute('name');
     $this->isAbstract = Helper::getBoolAttribute($node, 'isAbstract');
     $this->isMixin = Helper::getBoolAttribute($node, 'isMixin');
     $this->isQueryable = Helper::getBoolAttribute($node, 'isQueryable');
     $this->hasOrderableChildNodes = Helper::getBoolAttribute($node, 'hasOrderableChildNodes');
     $this->primaryItemName = $node->getAttribute('primaryItemName');
     if (empty($this->primaryItemName)) {
         $this->primaryItemName = null;
     }
     $this->declaredSuperTypeNames = array();
     $xp = new DOMXPath($node->ownerDocument);
     $supertypes = $xp->query('supertypes/supertype', $node);
     foreach ($supertypes as $supertype) {
         $this->declaredSuperTypeNames[] = $supertype->nodeValue;
     }
     $this->declaredPropertyDefinitions = new ArrayObject();
     $properties = $xp->query('propertyDefinition', $node);
     foreach ($properties as $property) {
         $this->declaredPropertyDefinitions[] = $this->factory->get('NodeType\\PropertyDefinition', array($property, $this->nodeTypeManager));
     }
     $this->declaredNodeDefinitions = new ArrayObject();
     $declaredNodeDefinitions = $xp->query('childNodeDefinition', $node);
     foreach ($declaredNodeDefinitions as $nodeDefinition) {
         $this->declaredNodeDefinitions[] = $this->factory->get('NodeType\\NodeDefinition', array($nodeDefinition, $this->nodeTypeManager));
     }
 }
开发者ID:rambo,项目名称:jackalope,代码行数:32,代码来源:NodeTypeDefinition.php

示例7: getNodeByPath

 /**
  * Get the node identified by an absolute path.
  *
  * To prevent unnecessary work to be done a register will be written containing already retrieved nodes.
  * Unfortunately there is currently no way to refetch a node once it has been fetched.
  *
  * @param string $absPath The absolute path of the node to create.
  * @param string $class The class of node to get. TODO: Is it sane to fetch data separatly for Version and normal Node?
  * @return \PHPCR\Node
  *
  * @throws \PHPCR\ItemNotFoundException If nothing is found at that absolute path
  * @throws \PHPCR\RepositoryException    If the path is not absolute or not well-formed
  */
 public function getNodeByPath($absPath, $class = 'Node')
 {
     $absPath = $this->normalizePath($absPath);
     $this->verifyAbsolutePath($absPath);
     if (!isset($this->objectsByPath[$class])) {
         $this->objectsByPath[$class] = array();
     }
     if (empty($this->objectsByPath[$class][$absPath])) {
         if (isset($this->itemsRemove[$absPath])) {
             throw new \PHPCR\ItemNotFoundException('Path not found (node deleted in current session): ' . $absPath);
         }
         // check whether a parent node was removed
         foreach ($this->itemsRemove as $path => $dummy) {
             if (strpos($absPath, $path) === 0) {
                 throw new \PHPCR\ItemNotFoundException('Path not found (parent node deleted in current session): ' . $absPath);
             }
         }
         $fetchPath = $absPath;
         if (isset($this->nodesMove[$absPath])) {
             throw new \PHPCR\ItemNotFoundException('Path not found (moved in current session): ' . $absPath);
         }
         // The path was the destination of a previous move which isn't yet dispatched to the backend.
         // I guess an exception would be fine but we can also just fetch the node from the previous path
         $fetchPath = $this->resolveBackendPath($fetchPath);
         $node = $this->factory->get($class, array($this->transport->getItem($fetchPath), $absPath, $this->session, $this));
         $this->objectsByUuid[$node->getIdentifier()] = $absPath;
         //FIXME: what about nodes that are NOT referencable?
         $this->objectsByPath[$class][$absPath] = $node;
     }
     return $this->objectsByPath[$class][$absPath];
 }
开发者ID:rambo,项目名称:jackalope,代码行数:44,代码来源:ObjectManager.php

示例8: createNodeType

 /**
  * Creates a NodeType from a NodeTypeDefinition and validates it
  *
  * @param   \PHPCR\NodeType\NodeTypeDefinitionInterface  $ntd    The node type definition
  * @param   bool    $allowUpdate    Whether an existing note type can be updated
  * @return \PHPCR\NodeType\NodeType the node type corresponding to the type definition
  * @throws \PHPCR\NodeType\NodeTypeExistsException   If the node type is already existing and allowUpdate is false
  */
 protected function createNodeType(\PHPCR\NodeType\NodeTypeDefinitionInterface $ntd, $allowUpdate)
 {
     if ($this->hasNodeType($ntd->getName()) && !$allowUpdate) {
         throw new \PHPCR\NodeType\NodeTypeExistsException('NodeType already existing: ' . $ntd->getName());
     }
     return $this->factory->get('NodeType\\NodeType', array($this, $ntd));
 }
开发者ID:rambo,项目名称:jackalope,代码行数:15,代码来源:NodeTypeManager.php

示例9: execute

 /**
  * {@inheritDoc}
  *
  * @api
  */
 public function execute()
 {
     if (is_null($this->objectManager)) {
         // if the ObjectManager was not injected in the header. this is only supposed to happen in the DBAL client.
         throw new RepositoryException('Jackalope implementation error: This query was built for parsing only. (There is no ObjectManager to run the query against.)');
     }
     $transport = $this->objectManager->getTransport();
     $rawData = $transport->query($this);
     $queryResult = $this->factory->get('Query\\QueryResult', array($rawData, $this->objectManager));
     return $queryResult;
 }
开发者ID:ruflin,项目名称:jackalope,代码行数:16,代码来源:Query.php

示例10: getPermissionLevel

 /**
  *getPermissionLevel
  *
  *Get our permission level for this object.
  * ------------------------------------------------------
  * 
  *@throws an exception if permissions were not loaded in an appropriate way for this object.
  *@param user - If a user is passed, we'll load permissions if we don't already have them.
  *
  *@return string
  *
  *
  *
  */
 public function getPermissionLevel($user = false)
 {
     if (!empty($this->_permissions)) {
         return $this->_permissions;
     }
     if (!is_object($user)) {
         throw new \Zend\Db\Exception\InvalidArgumentException('getPermissionLevel called when permissions have not been loaded yet.');
     }
     // Let's try to load permissions for this object.
     return $this->_permissions = Factory::get('ResourcesAccess')->hasResourceAccessTo($user, $this);
 }
开发者ID:umangvarshney,项目名称:zendtest,代码行数:25,代码来源:Model.php

示例11: getRequest

 /**
  * Opens a cURL session if not yet one open.
  *
  * @return null|false False in case there is already an open connection, else null;
  */
 protected function getRequest($method, $uri)
 {
     // init curl
     if (is_null($this->curl)) {
         $this->curl = new curl();
     }
     $uri = $this->normalizeUri($uri);
     $request = $this->factory->get('Transport\\Davex\\Request', array($this->curl, $method, $uri));
     $request->setCredentials($this->credentials);
     foreach ($this->defaultHeaders as $header) {
         $request->addHeader($header);
     }
     if (!$this->sendExpect) {
         $request->addHeader("Expect:");
     }
     return $request;
 }
开发者ID:rambo,项目名称:jackalope,代码行数:22,代码来源:Client.php

示例12: get

 /** Get instance of some class.
  *
  * This method is will call the Factory object to get a new object of
  * some class. You can specify, if you want to force the creation of a new
  * object or if it is ok for you, to reuse an existing one (default)
  *
  * @param string $class
  *	Class of requested object
  * @param array $values
  *	Parameters to hand to the objects constructor
  * @param bool $forceNew
  *	Force object to be a new one
  *
  * @return object
  */
 public function get($class, $values = array(), $forceNew = false)
 {
     return $this->Factory->get($class, $values, $forceNew);
 }
开发者ID:nfrickler,项目名称:tsunic,代码行数:19,代码来源:TSunic.class.php

示例13: testGetPrivate

 public function testGetPrivate()
 {
     $this->assertInstanceOf(self::$classMap['private'], $this->factory->get('unknown'));
 }
开发者ID:emarref,项目名称:jwt,代码行数:4,代码来源:FactoryTest.php

示例14: getVersionManager

 /**
  * Returns the VersionManager object.
  *
  * @return \PHPCR\Version\VersionManagerInterface a VersionManager object.
  * @throws \PHPCR\UnsupportedRepositoryOperationException if the implementation does not support versioning.
  * @throws \PHPCR\RepositoryException if an error occurs.
  * @api
  */
 public function getVersionManager()
 {
     return $this->factory->get('Version\\VersionManager', array($this->session->getObjectManager()));
 }
开发者ID:rambo,项目名称:jackalope,代码行数:12,代码来源:Workspace.php

示例15: get

 /**
  * @param string $daoName
  * @return Dao
  */
 public function get($daoName)
 {
     return parent::get($daoName);
 }
开发者ID:enyo,项目名称:rincewind,代码行数:8,代码来源:DaoFactory.php


注:本文中的Factory::get方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。