The profile editor can be used to modify a profile in the following ways:

Modify Component Instance Properties

When a component instance node is selected in the Component tree, the attributes of the MBean represented by the selected Component Instance Node are populated as Name-Value pairs in the Properties UI. The properties of a component instance are categorized into different groups.

General Properties

The General properties section of the Component Instance properties contains the property DeploymentListFile. Its value is the name of the .lst file from which the Component Instance is loaded. If the value is changed, upon saving the profile the service will be added to the .lst file specified by the User.

Component Instance Properties

This section contains the properties ObjectName, InstanceOf and Description which denote the Object Name of the MBean, Service type of the component instance and its description respectively.
The properties ObjectName and InstanceOf are non-editable as they are greyed out.

Component Instance Configuration

The properties of the MBean corresponding to the selected Component Instance Node are specified under this section, as shown in Figure 1.

  • If the property is hidden, it is not shown in the properties UI.
  • If the property is read-only, it is shown in a non-editable state.
  • If the property is an expert property, it is hidden in the properties UI by default. A User may view and edit the values of expert properties by checking the Show Expert Properties check box at the top of the properties UI.

For all editable properties of a component instance, depending on the type of property, a property editor is provided to help the User change the property value. Please refer to Table 1 for details on Property Types and Property Editors:

Property Type

Property Editor

String

Simple text editor.

Boolean

Check box.

Number (Integer/Float/Double)

A single line text editor which accepts only numbers as input.

Value extracted from a set of Legal Values

A Combo box which allows the user the select one value from set of legal values.

Table 1: Property Editors for different Property types


Figure 1: Properties UI

Component Instance Attributes

If the Component Instance contains attributes, these attributes are listed under the section Component Instance Attributes in the Properties UI. Editing these attributes is similar to editing the Component Instance Configuration properties.


Figure 2: Component Instance Attributes

Icon

When the value of a property is changed to a value other than the default value specified by the MBean component, the property name label will be displayed in bold.

Add / Remove Component Instances

Domains/Component Instances can be added to profiles. To add a component instance, right-click on a domain and select the Add Components option. To add a new domain, right-click on a domain or on a profile node and select the Add Domain option.

  1. Clicking the Add Components option opens the Add Components dialog box. The Add Components dialog box contains a table with two columns. The first column has a tree with all the components listed from which the required component can be selected. In the second column, Instance Count, the number of instances of the component that need to be added to the profile needs to be specified. In the example below, as shown in the figure below, only one instance of Fiorano > FioranoFW > Services > ConnectionManager is added to the domain Fiorano.socketAcceptors.port-2
  2. Select all the instances to be added and clicking OK, this adds the component instances to the component tree.


Figure 3: Adding a New Component Instance

The name of the component instances that have been added will be automatically generate automatically using <Component><instance_count>. A component instance can be renamed by choosing the Rename option using the right-click menu.

The values of the properties are set to the default value. Component instance properties can be configured by providing relevant/valid values in the Properties UI.

Icon
  • When a new component instance is added, unresolved dependencies of the component will be listed in the Profile Validation Messages view. Please refer the following section for further information on resolving dependencies.
  • If the component instance added has exclusive dependencies, a new instance of each exclusive dependency will be added to the profile within the same domain as the component instance. Please refer the following section for further information on exclusive dependencies.
  • A component instance can be deleted from a profile by selecting the Delete option using the right-click menu. Deleting a component instance removes any exclusive dependencies the component possesses from within the profile.

Resolving Component Dependencies

The dependencies for a component are listed as a child value of the DependsOn node of a component instance. These dependencies can be Required Dependencies, Optional Dependencies or Exclusive Dependencies. Required Dependencies are those dependencies that are required to configure a component instance.

If a component in an open profile has unresolved required dependencies, error messages will be shown in the Profile Validation Messages view.


Figure 4: Profile Validation Messages

If a component has unresolved optional dependencies, warning will be logged in the Validation message.

Exclusive Dependencies are dependencies that should not be allowed to be used with more than one component instance within a profile.  Details about dependency instances are displayed in its properties.

Properties of a Component dependency


Figure 5: Properties of Component Dependency

Instance: This is the instance of a component dependency. A list of all available instances within the profile is provided in a drop-down list. A User is able to select the required instance. Where there are exclusive dependencies, the fields are grayed out so they cannot be edited. This is because particular dependency is fixed for a given component instance.

  • Instance Of: Specifies the service type of the dependency instance.
  • Exclusive: Specifies if the dependency is exclusive to the component.
  • Optional: Specifies if the dependency is optional to the component.

Resolving Component Dependencies

When a profile is opened, unresolved dependencies are listed in the Profile Validation Messages view either as errors or as warnings, as shown in Figure 6. To resolve a dependency, double click on its corresponding error message. This selects the dependency node in the tree, displaying its properties in the Properties UI. The User may now select an instance from the available instances displayed.

For example, in the scenario shown in Figure 6, the dependency ObjectManager is unresolved for the instance ConnectionManager1. To resolve this, perform the following steps:

  1. Click on the ObjectManger node.
  2. In Properties, click on the combination next to the property Instance. A drop-down list with all the available instances is displayed.
  3. Click an instance to select it as the dependency instance.


Figure 6: Resolving dependencies

If a new instance is to be created:

  1. Right-click on the dependency node and select the Add New Instance option. A dialog box is displayed with all available domains.
  2. By clicking OK, a new instance of the dependency is created within the selected domain. This dependency can now be resolved by selecting the new dependency instance and adding it to the Instance property of a component, as shown in Figure 7.
  3. Once an instance is selected, the error message is removed from the Validation Messages view indicating that the dependency has been resolved.


Figure 7: Selecting a domain for a new Dependency Instance

Add a new Variable Dependency Instance

If a component has variable dependencies, the User can add new dependencies to its instances. To add a new variable dependency:

  • Right-click on the DependsOn node of the component. A menu is displayed with all available variable dependencies.


Figure 8: Choosing a Dependency type to add

  • Click on a dependency that needs to be added, as shown in Figure 11. A dialog box is displayed with a list of all components from which the component type of the new dependency can be chosen.
  • Click OK to add the new dependency.


Figure 9: Choosing the component type of the Dependency

In the example below, a new dependency AuditEventHandler is added to the component instance Application Repository.


Figure 10: Newly added Variable Dependency Instance

Change Implementation of a Component Instance

Some components provide multiple implementations. The instances of such components have a property Implementation under the General Properties section. This lists all the available implementations.

To change the implementation, click on the combo next to the Implementation property and select the required implementation. This will update the ObjectName, properties and dependencies of the component instance with the new implementation.


Figure 11: Modifying the implementation of a Component Instance

Adding attributes to a Component Instance

To add new attributes to a component instance:

  1. Right-click on the instance node and click Add Attributes. A dialog box is displayed where the name and value of the attribute can be provided.
  2. Specify attribute details and click OK to add the attribute to the component instance.


Figure 12: Adding an Attribute to a Component Instance

Remove custom attributes from a Component Instance

To remove User-defined attributes from a component:

  1. Click on Remove Attributes from the right-click menu of the component instance node. A list of all the attributes added by the User is displayed.
  2. Select the attributes to be removed and click OK to remove the attributes.


Figure 13: Removing user-defined attributes

Edit Default Configuration for a Component Instance

To edit the default configuration of a component instance:

  1. Click Edit Default Configuration. A dialog box is displayed with all properties along with their default values.
  2. Modify the default values of the properties using their respective editors and click OK to save the changes, as shown in Figure 14. The default values of the component will be modified and the new values will be used as default valued at the time of adding new instances.


Figure 14: Edit Default Configuration Dialog

Modify a domain

Domains can be added, removed or renamed by using the right-click option.

  1. Click Add Domain on the parent domain and give the name of the new domain to be added.
  2. Click OK to add the new domain.

To remove a domain:

  • Right-click on the domain and click Delete. The domain and all the component instances which are the children of the domain will be removed from the profile. If a component instance that is being removed has an exclusive dependency, the dependency instance will also be removed from the profile.

To rename a domain:

  1. Right-click on the domain and click Rename. A dialog box is displayed where the user can enter the new domain name.
  2. Click OK to change the name of the domain.
Icon

When a domain is renamed, the ObjectNames of all the component instances which are the children of the domain will be modified in accordance with the new value.

Edit Profile Metadata

Click on the profile node in the component tree. The properties of the profile such as Profile Name, Description, Created On, Author are shown in the Properties UI. These values can be modified by specifying the new values in the text boxes provided, as shown in Figure 15.

Profile properties also include the DeployedLists property which is a comma separated list of all the .lst files (from which the components are loaded).


Figure 15: Profile Metadata

Locate a Dependency Instance in the Component Tree

To locate the actual instance of a component dependency:

  • Right-click on the dependency node and select the Locate Instance option. This locates and selects the instance in the tree. The values of its properties are automatically updated in the properties UI.

Find Usages of a Component Instance

To find all the function of a particular component instance, right-click on the node and select the Find Usages option. The component tree will be filtered to show only those component instances which use the selected component and its dependencies, as shown in Figure 16.

The tree is returned to its previous state (displaying all the component instances) when the close button (marked by an X) is clicked.


Figure 16: Filtered Component Tree showing the Usages of a Component Instance

Adaptavist ThemeBuilder EngineAtlassian Confluence