示例#1
0
 public static function RestoreByNameForClass($strName, $intClassId, $strVersion, $objFile)
 {
     $objOperation = Operation::QuerySingle(QQ::AndCondition(QQ::Equal(QQN::Operation()->QcodoClassId, $intClassId), QQ::Equal(QQN::Operation()->Name, $strName)));
     if (!$objOperation) {
         $objOperation = new Operation();
         $objOperation->Name = $strName;
         $objOperation->QcodoClassId = $intClassId;
         $objOperation->FirstVersion = $strVersion;
         $objOperation->File = $objFile;
         $objOperation->Save();
     } else {
         $blnSave = false;
         if ($objOperation->LastVersion) {
             $objOperation->LastVersion = null;
             $blnSave = true;
         }
         if ($objFile->Id != $objOperation->intFileId) {
             $objOperation->File = $objFile;
             $blnSave = true;
         }
         if ($blnSave) {
             $objOperation->Save();
         }
     }
     return $objOperation;
 }
示例#2
0
文件: index.php 项目: qcodo/qcodo-api
 protected function GetItemId($strClassName, $strType = null, $strName = null)
 {
     $objClass = QcodoClass::LoadByName($strClassName);
     if (!$objClass) {
         return null;
     }
     $strToReturn = $objClass->Id;
     $this->tnvNavigation->GetItem($objClass->Id)->Expanded = true;
     switch (strtolower($strType)) {
         case 'methods':
         case 'functions':
             if (count($objClass->Operations)) {
                 $strToReturn .= 'm';
                 $objOperation = Operation::QuerySingle(QQ::AndCondition(QQ::Equal(QQN::Operation()->QcodoClassId, $objClass->Id), QQ::Equal(QQN::Operation()->Name, $strName)));
                 if ($objOperation) {
                     $strToReturn .= $objOperation->Id;
                 }
             }
             break;
         case 'properties':
             if (count($objClass->GetPropertiesForVariableGroupId(null))) {
                 $strToReturn .= 'p';
             }
             break;
         case 'variables':
         case 'membervariables':
             if (count($objClass->GetVariablesForVariableGroupId(null))) {
                 $strToReturn .= 'v';
             }
             break;
         case 'constants':
             if ($objClass->CountQcodoConstants()) {
                 $strToReturn .= 'c';
             }
             break;
         default:
             break;
     }
     return $strToReturn;
 }
示例#3
0
 /**
  * Load a single Operation object,
  * by QcodoClassId, QcodoInterfaceId, Name Index(es)
  * @param integer $intQcodoClassId
  * @param integer $intQcodoInterfaceId
  * @param string $strName
  * @return Operation
  */
 public static function LoadByQcodoClassIdQcodoInterfaceIdName($intQcodoClassId, $intQcodoInterfaceId, $strName)
 {
     return Operation::QuerySingle(QQ::AndCondition(QQ::Equal(QQN::Operation()->QcodoClassId, $intQcodoClassId), QQ::Equal(QQN::Operation()->QcodoInterfaceId, $intQcodoInterfaceId), QQ::Equal(QQN::Operation()->Name, $strName)));
 }