HCL Commerce Version or later

Parameter context in NiFi

Parameters are created within parameter contexts. These contexts allow us to bind a set of configurations to any connector pipe at runtime. Parameter contexts bundle a group of related variables into a single context so that you can bind just that context to a connector pipe (top-level NiFi process group) at runtime.

Each parameter context contains the name-value pair as shown in figure (1). Values of this parameter are populated from the environment variable set in NiFi. These are the same environment variables previously used in the connector descriptor definition. In the configuration details of the Process Group, you can check the name of Parameter Context, which gets bound to the Process Group as shown in figure (2). Parameters from the Parameter Context can be accessed with the # sign with the parameter name, for example, #{parameterName} as shown in figure (3).

Figure (1)

In the top right corner menu, you can find the menu with the name Parameter Context, which will list all the parameter contexts.

List of Parameter Contexts.

  • Parameters belong to the AUTH_JDBC_CONTEXT Parameter Context.

  • Parameters belong to the LIVE_JDBC_CONTEXT Parameter Context.

Figure (2)
Figure (3)

Changes to the parameter context implementation

  1. The ingest connector description definition no longer includes the database connection properties. The properties related to database connections are shown below. These properties can still be used the same way as before. However, the parameter context is recommended.
    • Database Driver Locations > AUTH_JDBC_DRIVER_LOCATION.
    • Database Driver Class Name > AUTH_JDBC_DRIVER_CLASSNAME.
    • Database Connection URL > AUTH_JDBC_URL.
    • Database User > AUTH_JDBC_USER_NAME.
  2. These properties are now converted into the parameter context as a name-value parameter. There are two different parameter contexts for each Auth and Live NiFi pipeline, namely:

    In the NiFI UI, pipelines that begin with the auth and start with data load are assigned the AUTH_JDBC_CONTEXT parameter context. Pipelines that start with live and push-to-live are assigned LIVE_JDBC_CONTEXT.

  3. The Ingest service will create a parameter context on startup and assign the respective Parameter Context to the Process Group based on the environment type of pipeline.
  4. The connector descriptor definition has changed in Version
    • Before, it contained all the properties related to the Database connection.
    • HCL Commerce Version or laterAfter, these Database connection properties are read from the parameter context.
      Note: Before creating any new Process Group, ensure you have the two variables below populated with empty values at the Process Group level to avoid conflicts with the upgrade pipe version.