Właściwości klas InteractionSpec i ConnectionSpec można udostępnić do wprowadzania danych, aby umożliwić aplikacji Java ustawianie wartości tych właściwości. Na przykład można udostępnić właściwość limitu czasu wykonania klasy ECIInteractionSpec, aby limit czasu był ustalany na podstawie danych wprowadzonych przez użytkownika.
Przykład
Poniżej przedstawiono metodę getCustomer() z kursu tader99 zmodyfikowaną w taki sposób, aby przyjmowała dodatkowy argument całkowity, execTimeout, i ustawiała jego wartość jako właściwość klasy interactionSpec. Wprowadzone zmiany zostały pogrubione. Zmiany w wygenerowanym kodzie zostały oznaczone kursywą.
/** * @j2c.interactionSpec class="com.ibm.connector2.cics.ECIInteractionSpec" * @j2c.interactionSpec-property name="functionName" value="TADERC99" * @j2c.interactionSpec-property * name="executeTimeout" * argumentBinding="execTimeout" * * @generated */ public sample.cics.data.CustomerInfo getCustomer( sample.cics.data.CustomerInfo arg, int execTimeout) throws javax.resource.ResourceException { ConnectionSpec cs = getConnectionSpec(); InteractionSpec is = interactionSpec; if (is == null) { is = new com.ibm.connector2.cics.ECIInteractionSpec(); ((com.ibm.connector2.cics.ECIInteractionSpec) is).setFunctionName("TADERC99"); ((com.ibm.connector2.cics.ECIInteractionSpec) is).setExecuteTimeout(execTimeout); } sample.cics.data.CustomerInfo output = new sample.cics.data.CustomerInfo(); invoke(cs, is, arg, output); return output; }
Aby udostępnić do wprowadzania właściwość klasy ConnectionSpec, należy użyć znacznika biblioteki Doclet @j2c.connectionSpec-property.