예제 #1
0
파일: App.php 프로젝트: FTeichmann/Erfurt
 /**
  * Returns a query cache instance.
  *
  * @return Erfurt_Cache_Frontend_QueryCache
  */
 public function getQueryCache()
 {
     if (null === $this->_queryCache) {
         $config = $this->getConfig();
         require_once 'Erfurt/Cache/Frontend/QueryCache.php';
         $this->_queryCache = new Erfurt_Cache_Frontend_QueryCache();
         $backend = $this->_getQueryCacheBackend();
         $this->_queryCache->setBackend($backend);
     }
     return $this->_queryCache;
 }
예제 #2
0
 public function getMaterializedViewName($subject, $predicate, $object)
 {
     if (self::$_materializedViews == null) {
         self::$_materializedViews = $this->getBackend()->getMaterializedViews();
     }
     if (!$subject instanceof Erfurt_Rdf_Resource) {
         $subject = null;
     } else {
         $subject = (string) $subject;
     }
     if (!$predicate instanceof Erfurt_Rdf_Resource) {
         $predicate = null;
     } else {
         $predicate = (string) $predicate;
     }
     if (!$object instanceof Erfurt_Rdf_Resource) {
         $object = null;
     } else {
         $object = (string) $object;
     }
     foreach (self::$_materializedViews as $view) {
         if ($view['subject'] == $subject && $view['predicate'] == $predicate && $view['object'] == $object) {
             return $view['tblName'];
         }
     }
     return false;
 }