private bool ExecuteCode(string code, CompiledCodeProperties compiledCodeProperties, string programInput,
                          SupportedProgrammingLanguages.Languages language)
 {
     try
     {
         if (compiledCodeProperties.IsCompiledSuccessfully)
         {
             CodeEvaluationInitiater codeEvaluation = new CodeEvaluationInitiater();
             _executedCodeProperties = codeEvaluation.InitiateCodeExecution(
                 GetProgramProperties(code, language, programInput),
                 compiledCodeProperties
                 );
             _executedCodeProperties.ExecutedSuccessfully = true;
         }
         else
         {
             _executedCodeProperties.CompiledCodeProp = compiledCodeProperties;
         }
     }
     catch (MissingProgramPropertiesValueException ex)
     {
         _executedCodeProperties.ExecutedSuccessfully = false;
         return(false);
     }
     catch (Exception ex)
     {
         _executedCodeProperties.ExecutedSuccessfully = false;
         return(false);
     }
     return(true);
 }
Example #2
0
    private ExecutedCodeProperties CallCsharpExecuter(ProgramProperties programProperties,
                                                      ExecutedCodeProperties executedCodeProperties)
    {
        CsharpCodeExecuter csharpCodeExecuter = new CsharpCodeExecuter(programProperties, _excecutedCodeProperties);
        CodeExecuter       codeExecuter       = new CodeExecuter(csharpCodeExecuter);

        return(codeExecuter.Execute());
    }
Example #3
0
 public CsharpCodeExecuter(ProgramProperties programProperties, ExecutedCodeProperties excecutedCodeProperties)
 {
     if (excecutedCodeProperties.CompiledCodeProp.IsCompiledSuccessfully == false ||
         excecutedCodeProperties.CompiledCodeProp.SuccessfulluyCompiledObject == null)
     {
         throw new Exception("Can't execute a unsuccessfull compiled assembly or a null assembly object.");
     }
     _assembly = excecutedCodeProperties.CompiledCodeProp.SuccessfulluyCompiledObject as Assembly;
     _excecutedCodeProperties = excecutedCodeProperties;
     _programProperties       = programProperties;
 }