예제 #1
0
 public function setup()
 {
     $this->_projectDirectory = __DIR__ . '/_files/project1/';
     if (!file_exists($this->_projectDirectory)) {
         mkdir($this->_projectDirectory);
     }
     $this->_projectProfileFile = __DIR__ . '/_files/.zfproject.xml.orig';
     $this->_removeProjectFiles();
     Context\Repository::resetInstance();
     $contextRegistry = Context\Repository::getInstance();
     $contextRegistry->addContextsFromDirectory(__DIR__ . '/../../../../library/Zend/Tool/Project/Context/Zf/', 'Zend\\Tool\\Project\\Context\\Zf\\');
     $this->_standardProfileFromData = new Profile();
     $this->_standardProfileFromData->setAttribute('profileData', file_get_contents($this->_projectProfileFile));
     $this->_standardProfileFromData->setAttribute('projectDirectory', $this->_projectDirectory);
 }
예제 #2
0
 protected function _loadZfSystem()
 {
     $conextRegistry = Context\Repository::getInstance();
     $conextRegistry->addContextsFromDirectory(__DIR__ . '/../../../../../library/Zend/Tool/Project/Context/Zf/', 'Zend\\Tool\\Project\\Context\\Zf\\');
 }
예제 #3
0
파일: Xml.php 프로젝트: niallmccrudden/zf2
 /**
  * __construct()
  *
  */
 public function __construct()
 {
     $this->_contextRepository = \Zend\Tool\Project\Context\Repository::getInstance();
 }
예제 #4
0
 /**
  * createResource()
  *
  * Method to create a resource with a given context with specific attributes
  *
  * @param string $context
  * @param array $attributes
  * @return \Zend\Tool\Project\Profile\Resource\Resource
  */
 public function createResource($context, array $attributes = array())
 {
     if (is_string($context)) {
         $contextRegistry = \Zend\Tool\Project\Context\Repository::getInstance();
         if ($contextRegistry->hasContext($context)) {
             $context = $contextRegistry->getContext($context);
         } else {
             throw new Exception\InvalidArgumentException('Context by name ' . $context . ' was not found in the context registry.');
         }
     } elseif (!$context instanceof \Zend\Tool\Project\Context) {
         throw new Exception\InvalidArgumentException('Context must be of type string or Zend\\Tool\\Project\\Context\\Interface.');
     }
     $newResource = new Resource($context);
     if ($attributes) {
         $newResource->setAttributes($attributes);
     }
     /**
      * Interesting logic here:
      *
      * First set the parentResource (this will also be done inside append).  This will allow
      * the initialization routine to change the appendability of the parent resource.  This
      * is important to allow specific resources to be appendable by very specific sub-resources.
      */
     $newResource->setParentResource($this);
     $newResource->initializeContext();
     $this->append($newResource);
     return $newResource;
 }
예제 #5
0
 /**
  * _loadContextClassesIntoRegistry() - This is called by the constructor
  * so that child providers can provide a list of contexts to load into the
  * context repository
  *
  * @param array $contextClasses
  */
 private function _loadContextClassesIntoRegistry($contextClasses)
 {
     $registry = Context\Repository::getInstance();
     foreach ($contextClasses as $contextClass) {
         $registry->addContextClass($contextClass);
     }
 }
예제 #6
0
파일: Resource.php 프로젝트: rexmac/zf2
 /**
  * initializeContext()
  *
  * @return \Zend\Tool\Project\Profile\Resource\Resource
  */
 public function initializeContext()
 {
     if ($this->_isContextInitialized) {
         return;
     }
     if (is_string($this->_context)) {
         $this->_context = \Zend\Tool\Project\Context\Repository::getInstance()->getContext($this->_context);
     }
     if (method_exists($this->_context, 'setResource')) {
         $this->_context->setResource($this);
     }
     if (method_exists($this->_context, 'init')) {
         $this->_context->init();
     }
     $this->_isContextInitialized = true;
     return $this;
 }