Implementation overview

Create Data Dictionary From FML by importing it from the DDEditor.

The following API is called when an FML is imported from DDEditor:
public DataDictionary  getDataDictiomaryFromFML2(String dataDictionaryName, String fml, String topLevelElementName, String serviceName, String operationName)
This API takes following parameters:
  1. Top-Level Root Element Name: To select the root node among multiple root nodes in the FML.

  2. Service Name: To select the Service called among multiple services defined in the FML. In case only one Service is defined then this parameter becomes optional.

  3. Operation Name:To select the Operation name that is called among multiple functions defined in the selected service.

This import fetches the details around remoting service (LiveCycle remoting endpoint and destination) and stores them in the Data Dictionary. These details are present in the Service level annotations and are used for connecting to the remoting service. There can be multiple functions defined in the remoting service but Data Dictionary Service would store the details of one function only. It would then call this operation for fetching the Java object. "Operation Name" decides the name of the operation/function. The input parameter details of this operation are also stored in the Data Dictionary. "Top-Level Root Element Name" parameter in the API above is used for the top-level entity (among multiple top-level entities). If it contains only one root level tag entity, then it is not mandatory to pass this information. You can choose to pass blank or null.

This API supports the importation of FML from the Data Dictionary building block and the ones obtained from Flash builder. Based on these scenarios there are two cases:
  • Cases when FMLs are obtained from Flash builder are imported - Default Binding are generated for Data Dictionary Elements.

  • Cases when FMLs are exported from Data Dictionary building block are imported back. The binding information of DDEs is stored as annotations in the FML when it is exported. The same information is restored when the FML is imported back in the system.

During the runtime phase, the Data Dictionary building block connects to the remoting service using the service details stored in the Data Dictionary.
public DataDictionaryInstance getDDIFromRemotingService(String dataDictionaryId, Object[] remotingServiceOperationParams)
where:
  • dataDictionaryId - identifies the Data Dictionary for which data dictionary instance is retrieved.

  • remotingServiceOperationParams - are the parameters passed to the operation in the remoting service.

// Ethnio survey code removed