Author: jvanzyl Date: Thu Feb 9 10:51:40 2006 New Revision: 376380 URL: http://svn.apache.org/viewcvs?rev=376380&view=rev Log: o adding a couple methods in the interface for dan to look at
Modified: maven/sandbox/proficio/proficio-api/src/main/java/org/apache/maven/proficio/Proficio.java maven/sandbox/proficio/proficio-core/src/main/java/org/apache/maven/proficio/DefaultProficio.java maven/sandbox/proficio/proficio-model/src/main/mdo/proficio.mdo Modified: maven/sandbox/proficio/proficio-api/src/main/java/org/apache/maven/proficio/Proficio.java URL: http://svn.apache.org/viewcvs/maven/sandbox/proficio/proficio-api/src/main/java/org/apache/maven/proficio/Proficio.java?rev=376380&r1=376379&r2=376380&view=diff ============================================================================== --- maven/sandbox/proficio/proficio-api/src/main/java/org/apache/maven/proficio/Proficio.java (original) +++ maven/sandbox/proficio/proficio-api/src/main/java/org/apache/maven/proficio/Proficio.java Thu Feb 9 10:51:40 2006 @@ -1,12 +1,25 @@ -/* - * Copyright (c) 2006 Your Corporation. All Rights Reserved. - */ package org.apache.maven.proficio; +import org.apache.maven.proficio.model.FaqEntry; + /** * @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl</a> * @version $Id$ */ public interface Proficio { + /** + * @xfire + */ + void addFaqEntry( FaqEntry entry ); + + /** + * @xfire + */ + void updateFaqEntry( FaqEntry entry ); + + /** + * @xfire + */ + void removeFaqEntry( FaqEntry entry ); } Modified: maven/sandbox/proficio/proficio-core/src/main/java/org/apache/maven/proficio/DefaultProficio.java URL: http://svn.apache.org/viewcvs/maven/sandbox/proficio/proficio-core/src/main/java/org/apache/maven/proficio/DefaultProficio.java?rev=376380&r1=376379&r2=376380&view=diff ============================================================================== --- maven/sandbox/proficio/proficio-core/src/main/java/org/apache/maven/proficio/DefaultProficio.java (original) +++ maven/sandbox/proficio/proficio-core/src/main/java/org/apache/maven/proficio/DefaultProficio.java Thu Feb 9 10:51:40 2006 @@ -1,13 +1,19 @@ package org.apache.maven.proficio; -/** - * Hello world! - * - */ +import org.apache.maven.proficio.model.FaqEntry; + public class DefaultProficio + implements Proficio { - public static void main( String[] args ) + public void addFaqEntry( FaqEntry entry ) + { + } + + public void updateFaqEntry( FaqEntry entry ) + { + } + + public void removeFaqEntry( FaqEntry entry ) { - System.out.println( "Hello World!" ); } } Modified: maven/sandbox/proficio/proficio-model/src/main/mdo/proficio.mdo URL: http://svn.apache.org/viewcvs/maven/sandbox/proficio/proficio-model/src/main/mdo/proficio.mdo?rev=376380&r1=376379&r2=376380&view=diff ============================================================================== --- maven/sandbox/proficio/proficio-model/src/main/mdo/proficio.mdo (original) +++ maven/sandbox/proficio/proficio-model/src/main/mdo/proficio.mdo Thu Feb 9 10:51:40 2006 @@ -11,503 +11,30 @@ <classes> <class rootElement="true"> - <name>ProjectGroup</name> + <name>Faq</name> <version>1.0.0+</version> <fields> <field> <name>id</name> - <version>1.0.0+</version> + <version>1.0.0</version> <type>int</type> <identifier>true</identifier> </field> <field> - <name>groupId</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field stash.maxSize="8192"> - <name>description</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field jpox.mappedBy="projectGroup"> - <name>projects</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.join="false"> - <type>Project</type> - <multiplicity>*</multiplicity> - </association> - </field> - <field jpox.fetchGroupNames="project-build-details"> - <name>notifiers</name> - <version>1.0.0+</version> - <association> - <type>ProjectNotifier</type> - <multiplicity>*</multiplicity> - </association> - </field> - <field jpox.fetchGroupNames="project-build-details"> - <name>buildDefinitions</name> - <version>1.0.0+</version> - <association> - <type>BuildDefinition</type> - <multiplicity>*</multiplicity> - </association> - </field> - </fields> - </class> - - <class> - <name>Project</name> - <version>1.0.0+</version> - <fields> - <field> - <name>id</name> - <required>true</required> - <identifier>true</identifier> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>groupId</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>artifactId</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>executorId</name> <version>1.0.0</version> <type>String</type> </field> <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field stash.maxSize="8192"> <name>description</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field stash.maxSize="256"> - <name>url</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field stash.maxSize="256"> - <name>scmUrl</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>scmTag</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>scmUsername</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>scmPassword</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>version</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <!-- TODO: should these 3 just be queried from the builds list? --> - <field> - <name>state</name> - <version>1.0.0+</version> - <type>int</type> - <defaultValue>1</defaultValue> - </field> - <field> - <name>oldState</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <!-- TODO: maybe buildresult itself? --> - <field> - <name>latestBuildId</name> <version>1.0.0</version> - <type>int</type> - </field> - <field> - <name>buildNumber</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <field stash.maxSize="256"> - <name>workingDirectory</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field jpox.mappedBy="project" jpox.fetchGroupNames="project-with-builds"> - <name>buildResults</name> - <version>1.0.0+</version> - <association jpox.join="false"> - <type>BuildResult</type> - <multiplicity>*</multiplicity> - </association> - </field> - <!-- TODO: remove --> - <field jpox.fetchGroupNames="project-with-checkout-result"> - <name>checkoutResult</name> - <version>1.0.0+</version> - <association> - <type>ScmResult</type> - </association> - </field> - <field jpox.fetchGroupNames="project-all-details"> - <name>developers</name> - <version>1.0.0+</version> - <association jpox.join="false"> - <type>ProjectDeveloper</type> - <multiplicity>*</multiplicity> - </association> - </field> - <field jpox.fetchGroupNames="project-all-details"> - <name>parent</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.join="false"> - <type>ProjectDependency</type> - </association> - </field> - <field jpox.fetchGroupNames="project-all-details"> - <name>dependencies</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.join="false"> - <type>ProjectDependency</type> - <multiplicity>*</multiplicity> - </association> - </field> - <field> - <name>projectGroup</name> - <version>1.0.0+</version> - <required>true</required> - <association stash.part="true" jpox.dependent="false"> - <type>ProjectGroup</type> - </association> - </field> - <field jpox.fetchGroupNames="project-build-details project-all-details"> - <name>notifiers</name> - <version>1.0.0+</version> - <association> - <type>ProjectNotifier</type> - <multiplicity>*</multiplicity> - </association> - </field> - <field jpox.fetchGroupNames="project-build-details project-all-details"> - <name>buildDefinitions</name> - <version>1.0.0+</version> - <association> - <type>BuildDefinition</type> - <multiplicity>*</multiplicity> - </association> - </field> - </fields> - </class> - - <class> - <name>ProjectNotifier</name> - <version>1.0.0+</version> - <description> - Configures one method for notifying users/developers when a build breaks. - </description> - <fields> - <field> - <name>id</name> - <required>true</required> - <identifier>true</identifier> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>type</name> - <version>1.0.0+</version> - <defaultValue>mail</defaultValue> <type>String</type> - <description>The mechanism used to deliver notifications.</description> - </field> - <field> - <name>from</name> - <version>1.0.0+</version> - <type>int</type> - <description>The origin of the notifier (pom or user).</description> - </field> - <field> - <name>enabled</name> - <version>1.0.0+</version> - <defaultValue>true</defaultValue> - <type>boolean</type> - </field> - <field> - <name>recipientType</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>sendOnSuccess</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>true</defaultValue> - </field> + </field> <field> - <name>sendOnFailure</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>true</defaultValue> - </field> - <field> - <name>sendOnError</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>true</defaultValue> - </field> - <field> - <name>sendOnWarning</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>true</defaultValue> - </field> - <field> - <name>configuration</name> - <version>1.0.0+</version> - <description>Extended configuration specific to this notifier goes here.</description> - <type>Map</type> - <association xml.mapStyle="inline" stash.part="true" stash.keyType="java.lang.String"> - <type>String</type> - <multiplicity>*</multiplicity> - </association> - </field> - </fields> - <codeSegments> - <codeSegment> - <version>1.0.0+</version> - <code><![CDATA[ - - public static final int FROM_PROJECT = 1; - - public static final int FROM_USER = 2; - - public boolean isFromProject() - { - return from == FROM_PROJECT; - } - - public boolean isFromUser() - { - return from == FROM_USER; - } - ]]></code> - </codeSegment> - </codeSegments> - </class> - - <class> - <name>ProjectDeveloper</name> - <version>1.0.0+</version> - <fields> - <field> - <name>scmId</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>email</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>continuumId</name> - <version>1.0.0+</version> - <type>int</type> - </field> - </fields> - </class> - - <class> - <name>ProjectDependency</name> - <version>1.0.0+</version> - <fields> - <field> - <name>groupId</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>artifactId</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>version</name> - <version>1.0.0+</version> - <type>String</type> - </field> - </fields> - </class> - - <class> - <name>BuildResult</name> - <version>1.0.0+</version> - <description><![CDATA[ - This class is a single continuum build. - ]]></description> - <fields> - <field> - <name>project</name> - <version>1.0.0+</version> - <!-- required>true</required --> - <association stash.part="true" jpox.dependent="false"> - <type>Project</type> - </association> - </field> - <field> - <name>id</name> - <version>1.0.0+</version> - <type>int</type> - <identifier>true</identifier> - </field> - <field> - <name>buildNumber</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>state</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>trigger</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>startTime</name> - <version>1.0.0+</version> - <!-- TODO: Because JPOX persists as UTC and pulls back using the local time, we have to take over --> - <type>long</type> - </field> - <field> - <name>endTime</name> - <version>1.0.0+</version> - <!-- TODO: Because JPOX persists as UTC and pulls back using the local time, we have to take over --> - <type>long</type> - </field> - <field stash.maxSize="8192"> - <name>error</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>success</name> - <version>1.0.0+</version> - <type>boolean</type> - </field> - <field> - <name>exitCode</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <field jpox.fetchGroupNames="build-result-with-details"> - <name>scmResult</name> - <version>1.0.0+</version> + <name>faqEntries</name> + <version>1.0.0</version> <association> - <type>ScmResult</type> - </association> - </field> - </fields> - </class> - - <class> - <name>ScmResult</name> - <packageName>org.apache.maven.continuum.model.scm</packageName> - <version>1.0.0+</version> - <fields> - <field> - <name>success</name> - <version>1.0.0+</version> - <type>boolean</type> - </field> - <field> - <name>commandLine</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field stash.maxSize="1024"> - <name>providerMessage</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <!-- TODO: page to disk? --> - <field stash.maxSize="1024"> - <name>commandOutput</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field stash.maxSize="8192"> - <name>exception</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>changes</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.join="false"> - <type>ChangeSet</type> - <multiplicity>*</multiplicity> - </association> - </field> - </fields> - </class> - - <class> - <name>ChangeSet</name> - <packageName>org.apache.maven.continuum.model.scm</packageName> - <version>1.0.0+</version> - <fields> - <field> - <name>author</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field stash.maxSize="8192"> - <name>comment</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>date</name> - <version>1.0.0+</version> - <!-- TODO: Because JPOX persists as UTC and pulls back using the local time, we have to take over --> - <type>long</type> - </field> - <field> - <name>files</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.join="false"> - <type>ChangeFile</type> + <type>FaqEntry</type> <multiplicity>*</multiplicity> </association> </field> @@ -515,478 +42,18 @@ </class> <class> - <name>ChangeFile</name> - <packageName>org.apache.maven.continuum.model.scm</packageName> - <version>1.0.0+</version> + <name>FaqEntry</name> + <version>1.0.0</version> <fields> <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>revision</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>status</name> - <version>1.0.0+</version> - <type>String</type> - </field> - </fields> - </class> - - <class> - <name>BuildDefinition</name> - <version>1.0.0+</version> - <fields> - <field> - <name>id</name> - <required>true</required> - <identifier>true</identifier> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>defaultForProject</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>false</defaultValue> - </field> - <field> - <name>goals</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>arguments</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>buildFile</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>schedule</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.dependent="false"> - <type>Schedule</type> - </association> - </field> - <field> - <name>profile</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.dependent="false"> - <type>Profile</type> - </association> - </field> - </fields> - </class> - - <class> - <name>Schedule</name> - <version>1.0.0+</version> - <description><![CDATA[ - Schedule for a project. - ]]></description> - <fields> - <field> - <name>id</name> - <identifier>true</identifier> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>active</name> - <version>1.0.0+</version> - <type>boolean</type> - </field> - <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>description</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>delay</name> - <description><![CDATA[ - Delay in seconds. - ]]></description> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>cronExpression</name> - <version>1.0.0+</version> - <type>String</type> - </field> - </fields> - </class> - - <class> - <name>Profile</name> - <version>1.0.0+</version> - <fields> - <field> - <name>id</name> - <identifier>true</identifier> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>active</name> - <version>1.0.0+</version> - <type>boolean</type> - </field> - <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>description</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>scmMode</name> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>buildWithoutChanges</name> - <version>1.0.0+</version> - <type>boolean</type> - </field> - <field> - <name>jdk</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.dependent="false"> - <type>Installation</type> - </association> - </field> - <field> - <name>builder</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.dependent="false"> - <type>Installation</type> - </association> - </field> - </fields> - </class> - - <class> - <name>Installation</name> - <packageName>org.apache.maven.continuum.model.system</packageName> - <version>1.0.0+</version> - <fields> - <field> - <name>version</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>path</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - </fields> - </class> - - <class> - <name>SystemConfiguration</name> - <packageName>org.apache.maven.continuum.model.system</packageName> - <version>1.0.0+</version> - <fields> - <field> - <name>guestAccountEnabled</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>true</defaultValue> - </field> - <field> - <name>defaultScheduleDescription</name> - <version>1.0.0+</version> - <type>String</type> - <defaultValue>Run hourly</defaultValue> - </field> - <field> - <name>defaultScheduleCronExpression</name> - <version>1.0.0+</version> - <type>String</type> - <defaultValue>0 0 * * * ?</defaultValue> - </field> - <field> - <name>workingDirectory</name> - <version>1.0.0+</version> - <type>String</type> - <defaultValue>working-directory</defaultValue> - </field> - <field> - <name>buildOutputDirectory</name> - <version>1.0.0+</version> - <type>String</type> - <defaultValue>build-output-directory</defaultValue> - </field> - <field> - <name>baseUrl</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>companyName</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>companyLogoUrl</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>companyUrl</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>initialized</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>false</defaultValue> - </field> - </fields> - </class> - - <class> - <name>UserGroup</name> - <packageName>org.apache.maven.continuum.model.system</packageName> - <version>1.0.0+</version> - <fields> - <field> - <name>id</name> - <identifier>true</identifier> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>description</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>permissions</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.dependent="false"> - <type>Permission</type> - <multiplicity>*</multiplicity> - </association> - </field> - </fields> - </class> - <class> - <name>ContinuumUser</name> - <packageName>org.apache.maven.continuum.model.system</packageName> - <version>1.0.0+</version> - <fields> - <field> - <name>accountId</name> - <version>1.0.0+</version> - <type>int</type> - <identifier>true</identifier> - </field> - <field> - <name>username</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>guest</name> - <version>1.0.0+</version> - <type>boolean</type> - <defaultValue>false</defaultValue> - </field> - <field> - <name>hashedPassword</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>fullName</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>email</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>group</name> - <version>1.0.0+</version> - <association stash.part="true" jpox.dependent="false"> - <type>UserGroup</type> - </association> - </field> - <field> - <name>notificationAddresses</name> - <version>1.0.0+</version> - <association stash.part="true" > - <type>NotificationAddress</type> - <multiplicity>*</multiplicity> - </association> - </field> - </fields> - <codeSegments> - <codeSegment> - <version>1.0.0+</version> - <code><![CDATA[ - public String getPassword() - { - return ""; - } - - public void setPassword( String password ) - { - setHashedPassword( crypt( password ) ); - } - - public boolean equalsPassword( String password ) - { - if ( hashedPassword == null && password == null ) - { - return true; - } - - if ( ( hashedPassword == null && password != null ) || ( hashedPassword == null && password != null ) ) - { - return false; - } - - return hashedPassword.equals( crypt( password ) ); - } - - private String crypt( String data ) - { - try - { - java.security.MessageDigest digester = java.security.MessageDigest.getInstance( "SHA-1" ); - digester.reset(); - digester.update( data.getBytes() ); - return encode( digester.digest() ); - } - catch( Exception e ) - { - return data; - } - } - - /** - * Encodes a 128 bit or 160-bit byte array into a String. - * - * @param binaryData Array containing the digest - * @return Encoded hex string, or null if encoding failed - */ - private String encode( byte[] binaryData ) - { - if ( binaryData.length != 16 && binaryData.length != 20 ) - { - int bitLength = binaryData.length * 8; - throw new IllegalArgumentException( "Unrecognised length for binary data: " + bitLength + " bits" ); - } - - String retValue = ""; - - for ( int i = 0; i < binaryData.length; i++ ) - { - String t = Integer.toHexString( binaryData[i] & 0xff ); - - if ( t.length() == 1 ) - { - retValue += ( "0" + t ); - } - else - { - retValue += t; - } - } - - return retValue.trim(); - } - ]]></code> - </codeSegment> - </codeSegments> - </class> - - <class> - <name>Permission</name> - <packageName>org.apache.maven.continuum.model.system</packageName> - <version>1.0.0+</version> - <fields> - <field> - <name>id</name> - <identifier>true</identifier> - <version>1.0.0+</version> - <type>int</type> - </field> - <field> - <name>name</name> - <version>1.0.0+</version> - <type>String</type> - </field> - <field> - <name>description</name> - <version>1.0.0+</version> - <type>String</type> - </field> - </fields> - </class> - - <class> - <name>NotificationAddress</name> - <version>1.0.0+</version> - <packageName>org.apache.maven.continuum.model.system</packageName> - <description> - Configures one method for notifying users/developers when a build breaks. - </description> - <fields> - <field> - <name>type</name> - <version>1.0.0+</version> - <defaultValue>mail</defaultValue> + <name>question</name> + <version>1.0.0</version> <type>String</type> - <description>The mechanism used to deliver notifications.</description> </field> <field> - <name>address</name> - <version>1.0.0+</version> + <name>answer</name> + <version>1.0.0</version> <type>String</type> - </field> - <field> - <name>configuration</name> - <version>1.0.0+</version> - <description>Extended configuration specific to this notifier goes here.</description> - <type>Map</type> - <association xml.mapStyle="inline" stash.part="true" stash.keyType="java.lang.String"> - <type>String</type> - <multiplicity>*</multiplicity> - </association> </field> </fields> </class>