Show in Frame No Frame
Up Previous Next Title Page Index Contents Search

Input Field
External Element
String List Widgets
Fixed List
Overridable List
Editable List
Radio Button Set
SOAP Fixed List
UUID Base64
UUID Hex

2.6.4 Widgets for String properties

A Property type of data type String can choose one of several widgets that will be used for entering values of that property.

Input Field

The default selection is Input Field, which is a single line box of approximately 30 characters by default (it can be resized).

External Element

The External Element widget type is used when the string represents a file, resource or command in the operating system. The widget used is identical to that for a normal Input Field, but its menu has an extra Execute item, which sends the contents of the property as a string to be run by the operating system. For example, in Windows this can be a text file, a Word document, a URL (e.g. http://www.metacase.com, or mailto:info@metacase.com), or a command. The menu also has a Browse... item, to allow easy selection of a new filename or folder name as the value.

String List Widgets

The next four widgets all use pull-down lists, whose initial set of values is defined in the property type. For these list types a Value list appears below the widget list. The Value list contains the predefined values for this type. The list pop-up menu allows addition, removal and changing the order of the values. Note that for Editable Lists, this value list is often empty: the contents of the list are built up separately for each project. The value list can also be edited conveniently in a text editor, one value per line, by choosing Edit as Text from its pop-up menu.

Fixed List

In a Fixed List the user can only select among the predefined values.

Overridable List

In an Overridable List the user can choose a value from the list, or type a value that is not in the list.

Editable List

In an Editable List new values of the property that are typed in the field will be added into the list. Note that the Editable List’s list contents are based on the values entered into the value list by metamodeler, but each project that uses this property type uses its own copy of the list, and the new items that the modelers add will only appear within that project. Use the Reset Projects button next to the value list to reset these per-project copied lists of Editable List values.

Radio Button Set

A Radio Button Set is a special case of a Fixed List widget. The initial values are given in the Value list like other list-based widgets, but they are presented as radio buttons in the property dialog.

SOAP Fixed List

The SOAP Fixed List is a special case of a Fixed List, where the list values are retrieved from an external source using SOAP calls. This requires the configuration of the SOAP server connection and retrieval message. When the SOAP Fixed List widget is selected, the Property Tool appears as in Figure 2–21. Select the SOAP server and method from the pull-down lists.

Property Tool with SOAP widget

Figure 2–21. Property Tool with SOAP widget selected.

To define a new SOAP server, press the Edit button next to the SOAP Server pull-down list. This will open a dialog for SOAP server configuration (Figure 2–22). To define a new SOAP server, enter its name and URLs for the WSDL file and the actual server (e.g. file:///c:/myservices.wsdl and http://localhost/myservice). To finalize the creation of the SOAP server definition, press the Add button. The SOAP server now appears in the list on the left. To edit an existing SOAP server definition, select it from the list, edit its values on the right pane and press the Modify button to confirm the changes. It is also possible to view those property types using a SOAP server definition by selecting it from the list and pressing the Info button. To remove a SOAP server definition, select it from the list and press the Remove button (remove is not allowed if there are still property types associated with the selected SOAP server definition).

SOAP Servers

Figure 2–22. SOAP server configuration.


UUID Base64

A UUID Base64 widget initializes the property with a string representation of a Universally Unique Identifier – a near-guaranteed globally unique sequence of characters. If the property is set as read-only (by prefixing its local name by an underscore) this can serve as a globally unique, permanent identifier. Unlike the object ID, instances created in different repositories will never have the same UUID, but when an instance is exported and imported into another repository, it will keep the same UUID in both the source and destination repository. The UUID is pseudo-random and will not reveal details of the computer or user that created it. For compactness the UUID is represented in unpadded Base64 encoding, so may include mixed case alphanumerics, + and / (but not =). Creating a new copy of an element containing a UUID (e.g. by Paste Special with deep copy) will result in an entirely new UUID too.

UUID Hex

A UUID Hex widget initializes the property with a hexadecimal string representation of a Universally Unique Identifier, similar to UUID Base64. For compatibility with other systems, the UUID is represented in RFC 4122 canonical format: five hypen-separated groups, 8-4-4-4-12, of lower-case hexadecimals, e.g. 123e4567-e89b-12d3-a456-426655440000. Note that changing the widget type of an existing UUID Property type will not change how the existing String values are displayed, only how new ones are created.

Show in Frame No Frame
Up Previous Next Title Page Index Contents Search