All Known Implementing Classes:
AbstractFunction, AbstractPollingFunction, AlarmBasedFunctionFactory.AlarmStateFunction, BaseFunction, ClientDynamicDispatchFunction, ClientFunctionFactory.HasRoleFunctionClient, ClientFunctionFactory.IsAlarmActiveFilteredFunctionClient, ClientFunctionFactory.IsAlarmActiveFunctionClient, ClientFunctionFactory.TranslateFunction, ComponentRunScriptExpression, DBFunctions.DatasetValueFunction, DBFunctions.DBExecFunction, DBFunctions.DBFunction, DBFunctions.IsDBConnectionAvailableFunction, DefaultFunctionFactory.AddDaysFunction, DefaultFunctionFactory.AddHoursFunction, DefaultFunctionFactory.AddMillisFunction, DefaultFunctionFactory.AddMinutesFunction, DefaultFunctionFactory.AddMonthsFunction, DefaultFunctionFactory.AddSecondsFunction, DefaultFunctionFactory.AddTimeFunction, DefaultFunctionFactory.AddWeeksFunction, DefaultFunctionFactory.AddYearsFunction, DefaultFunctionFactory.AggregateConcatFunction, DefaultFunctionFactory.BinaryEncFunction, DefaultFunctionFactory.BinaryEnumFunction, DefaultFunctionFactory.CaseFunction, DefaultFunctionFactory.CastFunction, DefaultFunctionFactory.CharFunction, DefaultFunctionFactory.CoalesceFunction, DefaultFunctionFactory.ColorChanger, DefaultFunctionFactory.ColumnRearrangeFunction, DefaultFunctionFactory.ColumnRenameFunction, DefaultFunctionFactory.ConcatFunction, DefaultFunctionFactory.CreateColorFunction, DefaultFunctionFactory.DataSetAggregateFunction, DefaultFunctionFactory.DataSetDateAggregateFunction, DefaultFunctionFactory.DateArithmeticFunction, DefaultFunctionFactory.DateDiffFunction, DefaultFunctionFactory.DateExtractFunction, DefaultFunctionFactory.DateFormatFunction, DefaultFunctionFactory.DateIsAfterFunction, DefaultFunctionFactory.DateIsBeforeFunction, DefaultFunctionFactory.DateIsBetweenFunction, DefaultFunctionFactory.DateIsDaylightTimeFunction, DefaultFunctionFactory.DaysBetweenFunction, DefaultFunctionFactory.EscapeSQL, DefaultFunctionFactory.EscapeXML, DefaultFunctionFactory.ForceQualityFunction, DefaultFunctionFactory.FromBinaryFunction, DefaultFunctionFactory.FromHexFunction, DefaultFunctionFactory.FromMillisFunction, DefaultFunctionFactory.FromOctalFunction, DefaultFunctionFactory.GetAMorPMFunction, DefaultFunctionFactory.GetBitFunction, DefaultFunctionFactory.GetDateFunction, DefaultFunctionFactory.GetDatePartFunction, DefaultFunctionFactory.GetDayOfMonthFunction, DefaultFunctionFactory.GetDayOfWeekFunction, DefaultFunctionFactory.GetDayOfYearFunction, DefaultFunctionFactory.GetHour12Function, DefaultFunctionFactory.GetHour24Function, DefaultFunctionFactory.GetMillisFunction, DefaultFunctionFactory.GetMinuteFunction, DefaultFunctionFactory.GetMonthFunction, DefaultFunctionFactory.GetQuarterFunction, DefaultFunctionFactory.GetSecondFunction, DefaultFunctionFactory.GetTimezoneFunction, DefaultFunctionFactory.GetTimezoneOffsetFunction, DefaultFunctionFactory.GetTimezoneRawOffsetFunction, DefaultFunctionFactory.GetYearFunction, DefaultFunctionFactory.GradientFunction, DefaultFunctionFactory.HoursBetweenFunction, DefaultFunctionFactory.IfFunction, DefaultFunctionFactory.IndexOfFunction, DefaultFunctionFactory.IsGoodFunction, DefaultFunctionFactory.IsNullFunction, DefaultFunctionFactory.IsQualityFunction, DefaultFunctionFactory.LeftOrRightFunction, DefaultFunctionFactory.LengthFunction, DefaultFunctionFactory.LookupFunction, DefaultFunctionFactory.MidnightFunction, DefaultFunctionFactory.MillisBetweenFunction, DefaultFunctionFactory.MinutesBetweenFunction, DefaultFunctionFactory.MonthsBetweenFunction, DefaultFunctionFactory.NowFunction, DefaultFunctionFactory.NumberFormatFunction, DefaultFunctionFactory.OrdinalFunction, DefaultFunctionFactory.PowerFunction, DefaultFunctionFactory.QualifiedValueFunction, DefaultFunctionFactory.QualityOfFunction, DefaultFunctionFactory.RepeatFunction, DefaultFunctionFactory.ReplaceFunction, DefaultFunctionFactory.RoundFunction, DefaultFunctionFactory.SecondsBetweenFunction, DefaultFunctionFactory.SequenceFunction, DefaultFunctionFactory.SetTimeFunction, DefaultFunctionFactory.SingleArgMathFunction, DefaultFunctionFactory.SortDatasetFunction, DefaultFunctionFactory.SplitStringFunction, DefaultFunctionFactory.StringCaseFunction, DefaultFunctionFactory.StringFormatFunction, DefaultFunctionFactory.StringTrimFunction, DefaultFunctionFactory.SubstringFunction, DefaultFunctionFactory.SwitchFunction, DefaultFunctionFactory.TimeBetweenFunction, DefaultFunctionFactory.TimePartBetweenFunction, DefaultFunctionFactory.TimestampOfFunction, DefaultFunctionFactory.ToBinaryFunction, DefaultFunctionFactory.ToHexFunction, DefaultFunctionFactory.ToMillisFunction, DefaultFunctionFactory.ToOctalFunction, DefaultFunctionFactory.TryFunction, DefaultFunctionFactory.TypeOfFunction, DefaultFunctionFactory.UrlEncode, DefaultFunctionFactory.WeeksBetweenFunction, DefaultFunctionFactory.YearsBetweenFunction, com.inductiveautomation.ignition.gateway.expressions.GatewayFunctionFactory.TranslateFunction, HasChangedFunction, JsonFormat, JsonGet, JsonSet, PerspectiveRunScriptFunction, PropertyBasedFunctionFactory.GetPropertyFunction, PropertyBasedFunctionFactory.IsDefinedFunction, PropertyFunction, ScriptFunction, TagFunction, TagFunctionFactory.DatacacheCountFunction, TagFunctionFactory.FSQLDateExtractFunction, TranslationFunction, VariableFunctions.ClearVariablesFunction, VariableFunctions.DeleteVariableFunction, VariableFunctions.GetVariableFunction, VariableFunctions.IsVariableDefinedFunction, VariableFunctions.StoreVariableFunction

public interface Function
A function is used by the FunctionExpression. It implements execute(Expression[] args) just like Expression does.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    connect(CommonContext context, InteractionListener updateListener)
    Gives the function a chance to connect itself to things, if necessary.
    Creates a copy of this function.
    void
    Tells the function to disconnect from anything it was connected to.
    Execute this function, and return the function's qualified value.
    Returns a string to be used in the auto-generated function documentation.
    default Class<?>
    Returns the type that this function will return upon execution
    void
    Initialize this function with the given arguments.
    void
    Tells the function to shutdown any polling operations.
    void
    Tells the function to startup any polling operations.
  • Method Details

    • execute

      Execute this function, and return the function's qualified value.
      Throws:
      ExpressionException
    • initArgs

      void initArgs(Expression[] args)
      Initialize this function with the given arguments.
    • getType

      default Class<?> getType()
      Returns the type that this function will return upon execution
      Since:
      8.0, only used for intellihint completion - implementations should not rely on getType; instead coerce defensively using TypeUtilities
    • getArgDocString

      String getArgDocString()
      Returns a string to be used in the auto-generated function documentation. The string should represent the arguments for the function, such as "string, count" for the "repeat" function.
    • copy

      Function copy()
      Creates a copy of this function. Each FunctionExpression will always retrieve a copy of the function that it wants. It is up to the function whether or not a true copy is retrieved, or simply a reference to the main function object. If the function stores transient data during serialization, and thus cannot be shared between expressions, a copy must be made.
    • connect

      void connect(CommonContext context, InteractionListener updateListener)
      Gives the function a chance to connect itself to things, if necessary. Most functions do not have any connections. A function should notify the updateListener if they change. The implementation of InteractionListener should execute as quickly as possible, and should not block.
    • disconnect

      void disconnect()
      Tells the function to disconnect from anything it was connected to.
    • startup

      void startup()
      Tells the function to startup any polling operations. Functions that use this can remember the updateListener from connect() to feed update notification to.
    • shutdown

      void shutdown()
      Tells the function to shutdown any polling operations.