• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP KServiceInterface类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: _findActorIdentifiers

 /**
  * Return an array of actor identifiers
  *
  * @return array
  */
 protected static function _findActorIdentifiers(KServiceInterface $container)
 {
     $components = $container->get('repos://admin/components.component')->getQuery()->enabled(true)->fetchSet();
     $components = array_unique($container->get('repos://admin/components.component')->fetchSet()->component);
     $identifiers = array();
     foreach ($components as $component) {
         $path = JPATH_SITE . '/components/' . $component . '/domains/entities';
         if (!file_exists($path)) {
             continue;
         }
         //get all the files
         $files = (array) JFolder::files($path);
         //convert com_<Component> to ['com','<Name>']
         $parts = explode('_', $component);
         $identifier = new KServiceIdentifier('com:' . substr($component, strpos($component, '_') + 1));
         $identifier->path = array('domain', 'entity');
         foreach ($files as $file) {
             $identifier->name = substr($file, 0, strpos($file, '.'));
             try {
                 if (is($identifier->classname, 'ComActorsDomainEntityActor')) {
                     $identifiers[] = clone $identifier;
                 }
             } catch (Exception $e) {
             }
         }
     }
     return $identifiers;
 }
开发者ID:walteraries,项目名称:anahita,代码行数:33,代码来源:actoridentifier.php


示例2: getInstance

 /**
  * Force creation of a singleton
  *
  * @param KConfigInterface 	$config    An optional KConfig object with configuration options
  * @param KServiceInterface	$container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $query = $container->get('repos://site/components.component')->getQuery();
         $registry = $container->get('application.registry');
         $cached = $registry->offsetExists('assignable-components');
         if ($cached) {
             $query->component($registry->offsetGet('assignable-components'));
         }
         //check the cache
         $container->get('repos://site/components.component')->getCommandChain()->disable();
         $components = $container->get('repos://site/components.component')->fetch($query, AnDomain::FETCH_ENTITY_LIST);
         $container->get('repos://site/components.component')->getCommandChain()->enable();
         if (!$cached) {
             $assignables = array();
             $names = array();
             foreach ($components as $component) {
                 if ($component->isAssignable()) {
                     $names[] = $component->component;
                     $assignables[] = $component;
                 }
             }
             $components = $assignables;
             $registry['assignable-components'] = $names;
         }
         $instance = $container->get('anahita:domain.entityset', array('data' => $components, 'repository' => 'repos://site/components.component'));
         $container->set($config->service_identifier, $instance);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:walteraries,项目名称:anahita,代码行数:38,代码来源:assignablecomponent.php


示例3: getInstance

 /**
  * Force creation of a singleton
  *
  * @param 	object 	An optional KConfig object with configuration options
  * @param 	object	A KServiceInterface object
  * @return ComDebugProfilerEvents
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $instance = new self($config);
         $container->set($config->service_identifier, $instance);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:JSWebdesign,项目名称:intranet-platform,代码行数:15,代码来源:queries.php


示例4: getInstance

 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     // Singleton behavior.
     $identifier = $config->service_identifier;
     $classname = $identifier->classname;
     $instance = new $classname($config);
     $container->set($identifier, $instance);
     return $instance;
 }
开发者ID:kosmosby,项目名称:medicine-prof,代码行数:9,代码来源:abstract.php


示例5: getInstance

 /**
  * Return.
  *
  * @param KConfigInterface  $config    An optional KConfig object with configuration options
  * @param KServiceInterface $container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $identifier = self::_identifier($config->service_identifier);
         $instance = AnDomain::getRepository($identifier, $config->toArray());
         $container->set($config->service_identifier, $instance);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:stonyyi,项目名称:anahita,代码行数:17,代码来源:repository.php


示例6: getInstance

 /**
  * Force creation of a singleton.
  *
  * @param KConfigInterface  $config    An optional KConfig object with configuration options
  * @param KServiceInterface $container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     JPluginHelper::importPlugin('storage');
     if (!$container->has($config->service_identifier)) {
         $classname = $config->service_identifier->classname;
         $instance = new PlgStorageLocal($config);
         $container->set($config->service_identifier, $instance);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:stonyyi,项目名称:anahita,代码行数:18,代码来源:default.php


示例7: getInstance

 /**
  * Force creation of a singleton.
  *
  * @param KConfigInterface  $config    An optional KConfig object with configuration options
  * @param KServiceInterface $container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $classname = $config->service_identifier->classname;
         $instance = new $classname($config);
         $container->set($config->service_identifier, $instance);
         $container->setAlias('application.dispatcher', $config->service_identifier);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:stonyyi,项目名称:anahita,代码行数:18,代码来源:application.php


示例8: getInstance

 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         //Create the singleton
         $classname = $config->service_identifier->classname;
         $instance = new $classname($config);
         $container->set($config->service_identifier, $instance);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:kosmosby,项目名称:medicine-prof,代码行数:10,代码来源:activity.php


示例9: getInstance

 /**
  * Force creation of a singleton
  *
  * @param 	object 	An optional KConfig object with configuration options
  * @param 	object	A KServiceInterface object
  * @return KDispatcherDefault
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     // Check if an instance with this identifier already exists or not
     if (!$container->has($config->service_identifier)) {
         //Create the singleton
         $classname = $config->service_identifier->classname;
         $instance = new $classname($config);
         $container->set($config->service_identifier, $instance);
         //Add the factory map to allow easy access to the singleton
         $container->setAlias('dispatcher', $config->service_identifier);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:Roma48,项目名称:mayak,代码行数:20,代码来源:dispatcher.php


示例10: getInstance

 /**
  * Check for overrides of the helper
  *
  * @param 	object 	An optional KConfig object with configuration options
  * @param 	object	A KServiceInterface object
  * @return ComActivitiesTemplateHelperActivity
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     $identifier = clone $config->service_identifier;
     $identifier->package = $config->row->package;
     $identifier = $container->getIdentifier($identifier);
     if (file_exists($identifier->filepath)) {
         $classname = $identifier->classname;
     } else {
         $classname = $config->service_identifier->classname;
     }
     $instance = new $classname($config);
     return $instance;
 }
开发者ID:JSWebdesign,项目名称:intranet-platform,代码行数:20,代码来源:activity.php


示例11: getInstance

 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     $identifier = clone $config->service_identifier;
     if ($config->data && $config->data->identifier) {
         $id = new KServiceIdentifier($config->data->identifier);
         if ($id->type === 'com') {
             $identifier->package = $id->package;
         }
     }
     $identifier = $container->getIdentifier($identifier);
     if ($identifier->classname != 'KDatabaseRowDefault' && class_exists($identifier->classname)) {
         $classname = $identifier->classname;
     } else {
         $classname = 'ComExtmanDatabaseRowExtension';
     }
     $instance = new $classname($config);
     return $instance;
 }
开发者ID:janssit,项目名称:www.ondernemenddiest.be,代码行数:18,代码来源:extension.php


示例12: getInstance

 /**
  * Force creation of a singleton
  *
  * @param KConfigInterface 	$config    An optional KConfig object with configuration options
  * @param KServiceInterface	$container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     $strIdentifier = (string) $config->service_identifier;
     $registery = $container->get('application.registry', array('key' => $strIdentifier . '_default_class'));
     if (!$registery->offsetExists($strIdentifier)) {
         try {
             $identifier = clone $config->service_identifier;
             $identifier->type = 'repos';
             $identifier->path = array('domain', 'entity');
             $default = array('prefix' => $container->get($identifier)->getClone(), 'fallback' => 'ComBaseControllerDefault');
         } catch (Exception $e) {
             $default = 'Com' . ucfirst($config->service_identifier->package) . 'ControllerDefault';
             $default = array('default' => array($default, 'ComBaseControllerResource'));
         }
         $default['identifier'] = $config->service_identifier;
         register_default($default);
         $classname = AnServiceClass::findDefaultClass($config->service_identifier);
         $config->service_identifier->classname = $classname;
         $registery->offsetSet($strIdentifier, $classname);
     }
     $classname = $registery->offsetGet($strIdentifier);
     $instance = new $classname($config);
     return $instance;
 }
开发者ID:walteraries,项目名称:anahita,代码行数:32,代码来源:default.php


示例13: getInstance

 /**
  * Force creation of a singleton
  *
  * @param KConfigInterface 	$config    An optional KConfig object with configuration options
  * @param KServiceInterface	$container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $registry = $container->get('application.registry', array('key' => $config->service_identifier));
         if (!$registry->offsetExists('aggregations')) {
             $components = $container->get('repos://site/components.component')->fetchSet();
             $dispatcher = $container->get('koowa:event.dispatcher');
             $components->registerEventDispatcher($dispatcher);
             $aggregations = new KConfig();
             $event = new KEvent(array('aggregations' => $aggregations));
             $dispatcher->dispatchEvent('onStoryAggregation', $event);
             $registry->offsetSet('aggregations', $aggregations);
         }
         $container->set($config->service_identifier, $registry->offsetGet('aggregations'));
     }
     return $container->get($config->service_identifier);
 }
开发者ID:walteraries,项目名称:anahita,代码行数:25,代码来源:aggregations.php


示例14: getInstance

 /**
  * Force creation of a singleton.
  *
  * @param KConfigInterface  $config    An optional KConfig object with configuration options
  * @param KServiceInterface $container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $id = JFactory::getUser()->id;
         if (!$id) {
             $viewer = $container->get('repos://site/people.person')->getEntity()->setData(array('userType' => ComPeopleDomainEntityPerson::USERTYPE_GUEST), AnDomain::ACCESS_PROTECTED);
             $viewer->set('id', 0);
             $viewer->getRepository()->extract($viewer);
         } else {
             $viewer = $container->get('repos://site/people.person')->find(array('userId' => $id));
         }
         $container->set($config->service_identifier, $viewer);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:stonyyi,项目名称:anahita,代码行数:23,代码来源:viewer.php


示例15: getInstance

 /**
  * Force creation of a singleton
  *
  * @param KConfigInterface 	$config    An optional KConfig object with configuration options
  * @param KServiceInterface	$container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $id = JFactory::getUser()->id;
         if (!$id) {
             $viewer = $container->get('repos://site/people.person')->getEntity()->setData(array('userType' => 'Guest'), AnDomain::ACCESS_PROTECTED);
             $viewer->set('id', 0);
             $viewer->getRepository()->extract($viewer);
         } else {
             $viewer = $container->get('repos://site/people.person')->find(array('userId' => $id));
             if (!$viewer) {
                 $viewer = $container->get('com://site/people.helper.person')->createFromUser(JFactory::getUser());
                 $viewer->save();
             }
         }
         $container->set($config->service_identifier, $viewer);
     }
     return $container->get($config->service_identifier);
 }
开发者ID:walteraries,项目名称:anahita,代码行数:27,代码来源:viewer.php


示例16: getInstance

 /**
  * Force creation of a singleton
  *
  * @param KConfigInterface 	$config    An optional KConfig object with configuration options
  * @param KServiceInterface	$container A KServiceInterface object
  *
  * @return KServiceInstantiatable
  */
 public static function getInstance(KConfigInterface $config, KServiceInterface $container)
 {
     if (!$container->has($config->service_identifier)) {
         $registry = $container->get('application.registry', array('key' => $config->service_identifier));
         if (!$registry->offsetExists('scopes')) {
             $components = $container->get('repos://site/components.component')->fetchSet();
             $dispatcher = $container->get('koowa:event.dispatcher');
             $components->registerEventDispatcher($dispatcher);
             $event = new KEvent(array('scope' => array()));
             $dispatcher->dispatchEvent('onBeforeFetch', $event);
             $scopes = new self();
             foreach ($event->scope as $scope) {
                 $scope = KConfig::unbox($scope);
                 if (is_array($scope)) {
                     $scope = $container->get('com://site/components.domain.entity.scope', $scope);
                 }
                 $scopes[$scope->getKey()] = $scope;
             }
             $registry->offsetSet('scopes', $scopes);
         }
         $container->set($config->service_identifier, $registry->offsetGet('scopes'));
     }
     return $container->get($config->service_identifier);
 }
开发者ID:walteraries,项目名称:anahita,代码行数:32,代码来源:scope.php


示例17: getIdentifier

 /**
  * Gets the service identifier.
  *
  * @return	KServiceIdentifier
  * @see 	KObjectServiceable
  */
 public final function getIdentifier($identifier = null)
 {
     if (isset($identifier)) {
         $result = $this->__service_container->getIdentifier($identifier);
     } else {
         $result = $this->__service_identifier;
     }
     return $result;
 }
开发者ID:janssit,项目名称:www.ondernemenddiest.be,代码行数:15,代码来源:abstract.php



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP KT类代码示例发布时间:2022-05-23
下一篇:
PHP KService类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap