Para tener una visión general de las interfaces, consulte la sección
Interfaces EGL. Puede declarar interfaces en un archivo fuente EGL, como
se
describe en el apartado Formato fuente EGL.
El diagrama de sintaxis para un componente de interfaz es el siguiente:

- Interface
nombreComponenteInterfaz
...
end
- Identifica el componente como interfaz y especifica el nombre del componente. Para
conocer las normas de denominación, consulte la sección Convenios de denominación.
- extendsnombreInterfazAmpliada
- Indica que la interfaz hereda las funciones de cada una de las demás interfaces
nombradas y de las interfaces a partir de las que se han ampliado las interfaces
nombradas, hasta cualquier nivel de herencia.
Si una descripción de función de la
interfaz tiene el mismo nombre que una descripción de función heredada, la descripción de
función de la interfaz altera temporalmente la descripción heredada.
Una interfaz
puede heredar más de una función que tenga la misma lista de argumentos; pero se
producirá un error de compilación si dos funciones de este tipo tienen tipos de retorno
diferentes o si una tiene un tipo de retorno y la otra no.
Una interfaz sólo puede
ampliar interfaces del mismo subtipo; por ejemplo, una interfaz de tipo JavaObject, no
puede ampliar una interfaz de tipo BasicInterface.
- subtipo
- Uno de los siguientes subtipos:
- BasicInterface (valor por omisión)
- Para acceso a servicios
- JavaObject
- Para acceso a código
Java
- PropertyList
- Lista de propiedades. Para obtener detalles, consulte el tema adecuado:
- Interfaces de tipo BasicInterface
- Interfaces de tipo JavaObject
- static
- Indica que la función no es específica de una variable de tipo Interface, pero puede
invocarse del siguiente modo:
nombreInterfaz.nombreFunción
- nombreInterfaz
- Nombre de componente de interfaz.
- nombreFunción
- Nombre de la función.
- nombreFunción
- Nombre de la función utilizada en el código EGL.
- listaParám
- Cada parámetro, tipo y modificador (IN, OUT, o INOUT), con las entradas separadas
por comas.
Si está creando una interfaz de tipo JavaObject, un parámetro puede ser de
tipo BOOLEAN, y la interfaz incorporada BooleanLib de EGL permite la conversión entre
valores Boolean e integer.
Para conocer más detalles, consulte la sección Interfaces de tipo
JavaObject.
Cuando un asistente de EGL crea una interfaz de tipo BasicInterface
para acceder a un servicio Web que devuelve una matriz o registro (como puede ocurrir si
el servicio se ha escrito en un lenguaje que no es EGL), no se especifica valor de
retorno; en su lugar, el asistente actúa del siguiente modo:
- Añade un parámetro al final de la lista de parámetros, especificando el tipo del valor
de retorno e incluyendo el modificador OUT; y
- Establece la propiedad @WSDL, campo isLastParamReturnValue, en yes.
- returns (tipoRetorno)
- Describe los datos (si los hay) que la función devuelve al invocante.
En una
interfaz de tipo JavaObject, el tipo de retorno puede ser BOOLEAN, y la
interfaz
incorporada BooleanLib de EGL permite la conversión entre valores Boolean e integer. Para conocer más detalles, consulte la sección Interfaces de tipo JavaObject.
Cuando un asistente de EGL crea una interfaz de tipo BasicInterface para acceder a un
servicio Web que devuelve una matriz o registro (como puede ocurrir si el servicio se ha
escrito en un lenguaje que no es EGL), no se especifica valor de retorno; en su lugar, el
asistente actúa del siguiente modo:
- Añade un parámetro al final de la lista de parámetros, especificando el tipo del
valor de retorno e incluyendo el modificador OUT; y
- Establece la propiedad @WSDL, campo isLastParamReturnValue, en
yes.
- functionDescriptionProperties
- Están soportadas las siguientes propiedades:
- @WSDL
- Permite a
EGL extraer datos de la definición WSDL (Web Service Description Language) para utilizarlos al
interactuar con el código de tiempo de ejecución de
Java
JAX-RPC. Los
campos de la propiedad @WSDL y sus tipos son los siguientes:
- elementName String
- Si este campo de propiedad está presente, el valor debe coincidir exactamente con el
nombre del elemento de operación WSDL para el servicio al que accede la interfaz. Si
el
campo de propiedad no está presente, el nombre del componente de interfaz debe coincidir
exactamente con el nombre del
elemento de operación WSDL. En cualquier caso, la comparación es sensible a
mayúsculas y minúsculas: por
ejemplo, el nombre miFuncion es diferente de MIFUNCION.
- namespace String
- Este campo de propiedad se pasa por alto en el contexto de una descripción de función.
- isLastParamReturnValue BooleanKind
- Indica si el último parámetro de listaParám
hace referencia al valor de retorno de la función. El valor por omisión es no,
lo que significa que el último parámetro de la descripción de función hace referencia al
último parámetro de la función en sí.
Cuando un asistente de EGL crea una interfaz de
tipo BasicInterface para acceder a un servicio Web que devuelve una matriz o registro
(como puede ocurrir si el servicio se ha escrito en un lenguaje que no es EGL), no se
especifica valor de retorno; en su lugar, el asistente actúa del siguiente modo:
- Añade un parámetro al final de la lista de parámetros, especificando el tipo del
valor de retorno e incluyendo el modificador OUT; y
- Establece la propiedad @WSDL, campo isLastParamReturnValue, en
yes.
- JavaName STRING
- Especifica el nombre del método
Java
asociado con la descripción de función EGL. El valor por omisión es el nombre de función, pero la
propiedad resulta útil si el nombre
Java
incluye caracteres que no son válidos en EGL. Para obtener detalles sobre la
validez, consulte la sección Convenios de denominación.
Para utilizar una interfaz, debe especificar el paquete com.ibm.egl.jsf.