public static string BCode(string ticker, string parameter1, string parameter2, string parameter3, string parameter4 = "", string parameter5 = "") { var isLegacyMode = IsLegacyMode(parameter1); var propertyName = ""; try { // legacy mode if (isLegacyMode) { var fyParameter = parameter1; var fqParameter = parameter2; propertyName = parameter3; var isRawValue = ParseBoolParameter(parameter4, false); var isWithUnit = ParseBoolParameter(parameter5, false); return(bCodeLegacyExecutor.Execute(ticker, fyParameter, fqParameter, propertyName, isRawValue, isWithUnit)); } // current mode else { var periodParam = parameter1; propertyName = parameter2; BCodeUdfPeriodParameterValidator.Validate(periodParam); var dataType = DataTypeResolver.Resolve(periodParam); var isRawValue = ParseBoolParameter(parameter3, false); var isWithUnit = ParseBoolParameter(parameter4, false); return(bCodeExecutor.Execute(ticker, dataType, periodParam, propertyName, isRawValue, isWithUnit)); } } catch (Exception e) { return(BCodeFunctionErrorHandler.ToErrorMessage(e, propertyName, Configuration.GetInstance().DebugMode)); } }
public static string PrintApiKeyInRegistry() { try { return(Configuration.GetInstance().ApiKey); } catch (Exception e) { // always print errors as debug mode return(BCodeFunctionErrorHandler.ToErrorMessage(e, "UDF::BCODE_API_KEY", true)); } }
public static string PrintRandomInteger() { try { Random r = new Random(); return(r.Next().ToString()); } catch (Exception e) { // always print errors as debug mode return(BCodeFunctionErrorHandler.ToErrorMessage(e, "UDF::BCODE_PING", true)); } }