public function testClassName() { $this->assertEquals('Class', U::className('class')); $this->assertEquals('Namespaced\\Class', U::className('namespaced', 'class')); $this->assertEquals('Namespaced\\Class\\Here', U::className('namespaced', 'class', 'here')); $this->assertEquals('Namespaced\\ClassSnake', U::className('namespaced', 'class_snake')); }
/** * @param string $name * @param SwContext|null $parent * * @return SwContext|null */ public function get($name, $parent = null) { $module = S::$n->getContextModule($name); if (empty($module)) { return null; } $class = U::className($module::getNamespace(), 'context', $name); if (!class_exists($class)) { return null; } return $this->newContext($class, $parent, $module); }
private function getServiceClassFallback($context, $service) { // Check whether we have a RestService in the context namespace $class = U::className($context->namespace, 'service', 'rest'); if (class_exists($class)) { return $class; } // Next up, try for a root service $class = U::className('saltwater', 'root', 'service', $service); if (class_exists($class)) { return $class; } // Fall back to the RedBean RestService // TODO: Needs to be decoupled return 'Saltwater\\RedBean\\Service\\Rest'; }
/** * @param string $type * * @return false|Provider */ private function makeProvider($type) { $class = U::className($this::getNamespace(), 'provider', $type); return class_exists($class) ? $class : false; }
/** * Get Entity class name from a name plus a module * @param string $name * @param Module $module * * @return string */ private function getEntityClass($name, $module) { return U::className($module::getNamespace(), 'entity', $name); }