///<summary> ///handle semantic actions other than FOR and IF. ///</summary> public void HandleGeneralOperation(SemanticOperation operation) { // get the object on which the action has to be taken String objectName = operation.ObjectStr; if (objectName == null) { objectName = SemanticOperationKeyWords.Metadata; } Object obj = semanticOperationVariableMap.Get(objectName); try { Object returnValue = null; returnValue = operation.Perform(obj); if (requestWaiting) { return; } if (operation.Name != null && returnValue != null) { semanticOperationVariableMap.Put(operation.Name, returnValue); } } catch (Exception e) { if (e is SemanticOperationExecutionException) { throw e; } throw new SemanticOperationExecutionException(e, operation, semanticOperationVariableMap); } }