/** * 指定された遷移名に対応するビュークラス名を返す(オブジェクトの生成は行わない) * * @access public * @param string $forward_name 遷移先の名称 * @return string view classのクラス名 */ public function getViewClassName($forward_name) { if ($forward_name == null) { return null; } if (isset($this->forward[$forward_name])) { $forward_obj = $this->forward[$forward_name]; } else { $forward_obj = array(); } if (isset($forward_obj['view_name'])) { $class_name = $forward_obj['view_name']; if (class_exists($class_name)) { return $class_name; } } else { $class_name = null; } // viewのインクルード $this->_includeViewScript($forward_obj, $forward_name); if (is_null($class_name) == false && class_exists($class_name)) { return $class_name; } else { if (is_null($class_name) == false) { $this->logger->log(LOG_WARNING, 'stated view class is not defined [%s] -> try default', $class_name); } } $class_name = $this->getDefaultViewClass($forward_name); if (class_exists($class_name)) { return $class_name; } else { $class_name = $this->class_factory->getObjectName('view'); $this->logger->log(LOG_DEBUG, 'view class is not defined for [%s] -> use default [%s]', $forward_name, $class_name); return $class_name; } }