protected override DataTable getVariableImpl(VariableDefinition def, CallerController <CallerData> caller,
                                              RequestController <RequestData> request)
 {
     try
     {
         IncomingAggreGateCommand ans = sendGetVariable(def.getName());
         return(decodeRemoteDataTable(def.getFormat(), ans.getEncodedDataTableFromReply()));
     }
     catch (Exception ex)
     {
         Log.CONTEXT_VARIABLES.debug("Error getting variable '" + def.getName() + "' from context '" + this.getPath() + "'", ex);
         throw new ContextException(ex.Message, ex);
     }
 }