<?xml version="1.0" ?>
<!--

    Portlet Services mapping file controls mappings between layout descriptors and
    org.gridlab.gridsphere.portlet.service.* classes

    $Id: portlet-services-mapping.xml 4633 2006-03-09 16:44:16Z wehrens $

-->
<!DOCTYPE mapping PUBLIC "-//EXOLAB/Castor Object Mapping DTD Version 1.0//EN" "http://castor.exolab.org/mapping.dtd">
<mapping>

    <class name="org.gridlab.gridsphere.portlet.service.spi.impl.descriptor.SportletServiceCollection">
        <map-to xml="portlet-services"/>
        <field name="PortletServicesList" type="org.gridlab.gridsphere.portlet.service.spi.impl.descriptor.SportletServiceDefinition" collection="vector">
            <bind-xml name="service"/>
        </field>
    </class>

    <class name="org.gridlab.gridsphere.portlet.service.spi.impl.descriptor.SportletServiceDefinition">
        <field name="ServiceName" type="string">
            <bind-xml name="name"/>
        </field>
        <field name="ServiceDescription" type="org.gridlab.gridsphere.core.persistence.castor.descriptor.Description" collection="vector">
            <bind-xml name="description"/>
        </field>
        <field name="ServiceInterface" type="string">
            <bind-xml name="interface"/>
        </field>
        <field name="UserRequired" type="boolean">
            <bind-xml name="user-required"/>
        </field>
        <field name="ServiceImplementation" type="string">
            <bind-xml name="implementation"/>
        </field>
        <field name="ConfigParamList" type="org.gridlab.gridsphere.core.persistence.castor.descriptor.ConfigParam" collection="vector">
            <bind-xml name="service-config"/>
        </field>
        <field name="LoadOnStartup" type="boolean">
            <bind-xml name="load-on-startup"/>
        </field>
    </class>

    <class name="org.gridlab.gridsphere.core.persistence.castor.descriptor.ConfigParam">
        <field name="ParamName" type="string">
            <bind-xml name="param-name"/>
        </field>
        <field name="ParamValue" type="string">
            <bind-xml name="param-value"/>
        </field>
    </class>

    <class name="org.gridlab.gridsphere.core.persistence.castor.descriptor.Description">
        <map-to xml="description"/>
        <field name="Lang" type="string">
            <bind-xml name="lang" node="attribute"/>
        </field>
        <field name="Text" type="string">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>

</mapping>