public final class ConfigurationDescriptor
extends Object
A data structure that describes an instance of an IntegrationTemplate
or ConnectedSystemTemplate
.
The data structure contains an IntegrationTemplate's or ConnectedSystemTemplate's definition, meaning state
, and the associated types
that define the structure of and rendering for that state.
PropertyState values are provided by the user, but the PropertyState
objects determine which fields appear in the UI.
For a type's field to appear, it must be present in the state. Therefore, the ConnectedSystemTemplate.getConfigurationDescriptor(com.appian.connectedsystems.templateframework.sdk.configuration.ConfigurationDescriptor, com.appian.connectedsystems.templateframework.sdk.configuration.PropertyPath, com.appian.connectedsystems.templateframework.sdk.ExecutionContext)
and IntegrationTemplate.getConfigurationDescriptor(com.appian.connectedsystems.templateframework.sdk.configuration.ConfigurationDescriptor, com.appian.connectedsystems.templateframework.sdk.configuration.ConfigurationDescriptor, com.appian.connectedsystems.templateframework.sdk.configuration.PropertyPath, com.appian.connectedsystems.templateframework.sdk.ExecutionContext)
methods must construct the initial state for each connected system and integration instance using StateGenerator.generateDefaultState(com.appian.connectedsystems.templateframework.sdk.configuration.TypeReference)
.
As users provide values, the configuration descriptor can by dynamically updated to progressively disclose configuration options, fill in dropdown choices, and set default values.
Construct configuration descriptors using the ConfigurationDescriptor.ConfigurationDescriptorBuilder
.
Modifier and Type | Class and Description |
---|---|
static class |
ConfigurationDescriptor.ConfigurationDescriptorBuilder
Builder for a configuration descriptor
|
Modifier and Type | Field and Description |
---|---|
static String |
ROOT_KEY |
static String |
STATE_KEY |
static String |
TYPES_KEY |
Modifier and Type | Method and Description |
---|---|
static ConfigurationDescriptor.ConfigurationDescriptorBuilder |
builder()
Builder for a configuration descriptor
|
PropertyState |
getRootState()
The combination of user input and developer configuration data that defines an instance of a
ConnectedSystemTemplate or IntegrationTemplate . |
Map<String,PropertyState> |
getState()
Use
getRootState() |
Map<String,LocalTypeDescriptor> |
getTypes()
The structure of and rendering configurations for the data that define a
ConnectedSystemTemplate or IntegrationTemplate instance. |
ConfigurationDescriptor.ConfigurationDescriptorBuilder |
toBuilder()
Converts the immutable configuration descriptor to a mutable builder.
|
public static final String STATE_KEY
public static final String TYPES_KEY
public static final String ROOT_KEY
public Map<String,PropertyState> getState()
getRootState()
public PropertyState getRootState()
ConnectedSystemTemplate
or IntegrationTemplate
.
The root PropertyState
type must be a LocalTypeDescriptor
.
ConfigurationDescriptor.ConfigurationDescriptorBuilder.withState(com.appian.connectedsystems.templateframework.sdk.configuration.PropertyState)
public Map<String,LocalTypeDescriptor> getTypes()
ConnectedSystemTemplate
or IntegrationTemplate
instance.
The root state must have a corresponding type present in the type map. Any property whose key is not present in the type's property keys will be neither displayed in the UI nor persisted. This rule applies to all nested LocalTypePropertyDescriptor's
properties.
LocalTypeDescriptor
names to their respective LocalTypeDescriptor
.public ConfigurationDescriptor.ConfigurationDescriptorBuilder toBuilder()
public static ConfigurationDescriptor.ConfigurationDescriptorBuilder builder()
Copyright © 2018-present Appian Corporation. All Rights Reserved.