Beispiel #1
0
        public override bool IsEquivalentToOriginal(IParameterStartValue startValue, IParameterStartValuesBuildingBlock buildingBlock)
        {
            var spatialStructure      = SpatialStructureReferencedBy(buildingBlock);
            var moleculeBuildingBlock = MoleculeBuildingBlockReferencedBy(buildingBlock);

            var parameter = _parameterResolver.Resolve(startValue.ContainerPath, startValue.Name, spatialStructure, moleculeBuildingBlock);

            if (parameter == null)
            {
                return(false);
            }

            return(HasEquivalentDimension(startValue, parameter) &&
                   HasEquivalentFormula(startValue, parameter.Formula) &&
                   HasEquivalentStartValue(startValue, parameter.Value));
        }
Beispiel #2
0
 static void EvaluateParameter(string p_name, ParameterArgs p_args, IParameterResolver p_resolver, IAttributeDataCollection p_collection, bool p_referenced)
 {
     //Debug.Log("EvaluateParameter: "+p_name);
     p_args.Result = p_resolver.Resolve(p_name, p_collection, p_referenced);
     // Only log first error
     if (!hasErrorInEvaluation && p_resolver.hasErrorInResolving)
     {
         errorMessage = p_resolver.errorMessage;
     }
     hasErrorInEvaluation = hasErrorInEvaluation || p_resolver.hasErrorInResolving;
 }
Beispiel #3
0
        /// <summary>
        /// Executes the command line.
        /// </summary>
        /// <param name="cmdline">The command line to execute. That's the alias and the arguments (which are not mandatory)</param>
        public ExecutionResult Execute(string cmdline, long sessionId)
        {
            var cmd = _resolver.Split(cmdline, sessionId);

            var alias = _databaseService.GetAlias(cmd.Command, sessionId);

            alias = _resolver.Resolve(alias, cmd.Parameters);

            if (_pluginManager.Exists(alias.Name))
            {
                _pluginManager.Execute(cmd);
                return(ExecutionResult.SuccesShow);;
            }
            else if (_macroRunner.Exists(alias.FileName))
            {
                _macroRunner.Execute(alias);
                return(ExecutionResult.SuccessHide);
            }
            else
            {
                return(_cmdRunner.Execute(alias));
            }
        }