[jbosstools-commits] JBoss Tools SVN: r42017 - in branches/jbosstools-3.3.x/hibernatetools/docs/reference: en-US and 3 other directories.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Sun Jun 17 20:40:15 EDT 2012
Author: irooskov at redhat.com
Date: 2012-06-17 20:40:14 -0400 (Sun, 17 Jun 2012)
New Revision: 42017
Added:
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Author_Group.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Book_Info.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Feedback.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.ent
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/JPA_project_for_hibernate_jboss_tools.zip
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/JPA_project_for_hibernate_jboss_tools_331.zip
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Preface.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Revision_History.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/TestHibernate_for_hibernate_jboss_tools.zip
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/TestHibernate_for_hibernate_jboss_tools_331.zip
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/ant.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegen.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegenarchitecture.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/database_jboss_tools.zip
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/database_jboss_tools_331.zip
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/code_generation/
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/code_generation/code_generation_1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/favicon.ico
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/icon.svg
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/jbosstools_logo.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property2.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property3.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property4.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property5.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations1_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations2.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations3.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/autoLayout.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt2.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt3.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt4.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration10.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration11.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration12.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration2.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration3.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration4.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration5.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration6.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration7.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration8.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration9.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagram1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagram2.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagramToolbar.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/expandState.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/exportAsImage.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/layout.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram2.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram3.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/openMappingFile_but.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/openSourceFile_but.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0_b.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_1.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_10.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_11.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12_b.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_13.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_14.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_15.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_16.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_17.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_17_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_b.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_g.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_b.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_c.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_d.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_2.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_20.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_21_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_21_b.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_22.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_2_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_3.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_b.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_c.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_d.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_5.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_6.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_7.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8a.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8b.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_9.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/prototypingQueries.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/saveDiagram.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/sticky_but.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toggleConnections.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarAutolayout.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarExpandCollapse.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarRefresh.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarShowHideConnections.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarShowHideShapes.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarZoom.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/visibleState.png
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/introduction.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/master.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/plugins.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/reverseengineering.xml
branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/setup.xml
Log:
updated with trunk doc files
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Author_Group.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Author_Group.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Author_Group.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,6 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE Book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+]>
+<authorgroup><author><firstname>Max</firstname><surname>Andersen</surname></author>
+ <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
+ <author><firstname>Svetlana</firstname><surname>Mukhina</surname></author> </authorgroup>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Book_Info.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Book_Info.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Book_Info.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,25 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE Book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+]>
+<bookinfo>
+ <title>Hibernate Tools Reference Guide</title>
+ <subtitle>Provides information relating to the Hibernate Tools set.</subtitle>
+ <productname>JBoss Developer Studio</productname>
+ <productnumber>5.0.Beta</productnumber>
+ <edition>5.0.0</edition>
+ <pubsnumber>3</pubsnumber>
+ <abstract>
+ <para>
+ The Hibernate Tools Reference Guide explains how to use the Hibernate Tools to perform reverse engineering, code generation, visualization and interaction with Hibernate.
+ </para>
+ </abstract>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="Common_Content/images/title_logo.svg" format="SVG"></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
+ <xi:include href="Common_Content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+ <xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+</bookinfo>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Feedback.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Feedback.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Feedback.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,92 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "../Document_Conventions.ent">
+%BOOK_ENTITIES;
+]>
+<appendix id="sect_JBoss-Getting_Help_and_Giving_Feedback" lang="en-US">
+ <title>Getting Help and Giving Feedback</title>
+ <section id="sect_JBoss-Do_You_Need_Help">
+ <title>Do You Need Help?</title>
+ <indexterm>
+ <primary>help</primary>
+ <secondary>getting help</secondary>
+
+ </indexterm>
+ <para>
+ If you experience difficulty with a procedure described in this documentation, visit the Red Hat Customer Portal at <ulink url="http://access.redhat.com" />. Through the customer portal, you can:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ search or browse through a knowledgebase of technical support articles about Red Hat products.
+ </para>
+
+ </listitem>
+ <listitem>
+ <para>
+ submit a support case to Red Hat Global Support Services (GSS).
+ </para>
+
+ </listitem>
+ <listitem>
+ <para>
+ access other product documentation.
+ </para>
+
+ </listitem>
+
+ </itemizedlist>
+ <para>
+ Red Hat also hosts a large number of electronic mailing lists for discussion of Red Hat software and technology. You can find a list of publicly available mailing lists at <ulink url="https://www.redhat.com/mailman/listinfo" />. Click on the name of any mailing list to subscribe to that list or to access the list archives.
+ </para>
+
+ </section>
+
+ <section id="jboss-feedback">
+ <title>Give us Feedback</title>
+ <!-- NOTE: You will need the following entities defined in your .ent file.
+ You will need to replace _YOUR_PRODUCT_HERE_, _YOUR_COMPONENT_
+ and _YOUR_SUMMARY_ - entities are not replaced in URLs.
+ <!ENTITY PRODUCT "JBoss Product Name">
+ <!ENTITY BZCOMPONENT "doc-triage">
+ <!ENTITY BZURL "<ulink url='https://bugzilla.example.com/enter_bug.cgi?product=_YOUR_PRODUCT_HERE_&component=_YOUR_COMPONENT_&version=12&short_desc=_YOUR_SUMMARY_'>http://bugzilla.redhat.com/</ulink>">
+
+ These entities should not affect translated documents, since Bugzilla is not localised.
+ --> <indexterm>
+ <primary>feedback</primary>
+ <secondary>contact information for this manual</secondary>
+
+ </indexterm>
+ <para>
+ If you find a typographical error, or know how this guide can be improved, we would love to hear from you. Submit a report in Bugzilla against the product <literal>&BZPRODUCT;</literal> and the component <literal>&BZCOMPONENT;</literal>. The following link will take you to a pre-filled bug report for this product: &BZURL;.
+ </para>
+ <para>
+ Fill out the following template in Bugzilla's <literal>Description</literal> field. Be as specific as possible when describing the issue; this will help ensure that we can fix it quickly.
+ </para>
+
+<screen>Document URL:
+
+
+Section Number and Name:
+
+
+Describe the issue:
+
+
+Suggestions for improvement:
+
+
+Additional information:
+
+
+</screen>
+ <para>
+ Be sure to give us your name so that you can receive full credit for reporting the issue.
+ </para>
+
+ </section>
+
+
+</appendix>
+
+
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.ent
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.ent (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.ent 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,7 @@
+<!ENTITY PRODUCT "JBoss">
+<!ENTITY BOOKID "Hibernate_Tools_Reference_Guide">
+<!ENTITY YEAR "2011">
+<!ENTITY HOLDER "Red Hat">
+<!ENTITY BZPRODUCT "JBoss Developer Studio">
+<!ENTITY BZCOMPONENT "Hibernate Tools Reference Guide">
+<!ENTITY BZURL "<ulink url='https://bugzilla.redhat.com/enter_bug.cgi?product=JBoss%20Developer%20Studio%204&component=Hibernate%20Tools%20Reference%20Guide&version=4.1.0&short_desc=Error%20in%20Hibernate%20Tools%20Reference%20Guide'>http://bugzilla.redhat.com/</ulink>">
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Hibernate_Tools_Reference_Guide.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE Book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+]>
+<book>
+<xi:include href="Book_Info.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<xi:include href="Preface.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<xi:include href="introduction.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<!--xi:include href="setup.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include-->
+<xi:include href="codegenarchitecture.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<xi:include href="plugins.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<xi:include href="ant.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<xi:include href="reverseengineering.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<xi:include href="codegen.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+<xi:include href="Feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+<xi:include href="Revision_History.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+</book>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/JPA_project_for_hibernate_jboss_tools.zip
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/JPA_project_for_hibernate_jboss_tools.zip
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/JPA_project_for_hibernate_jboss_tools_331.zip
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/JPA_project_for_hibernate_jboss_tools_331.zip
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Preface.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Preface.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Preface.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!--<!DOCTYPE preface PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "Cloud_Tools_Reference_Guide.ent">
+%BOOK_ENTITIES;
+]> -->
+<preface id="pref-Cloud_Tools_Reference_Guide-Preface">
+ <title>Preface</title>
+ <para>
+ This manual uses several conventions to highlight certain words and phrases and draw attention to specific pieces of information. To get more information on these conventions please refer to the <guilabel>Document Conventions</guilabel> manual, which can be found on the <ulink url="http://docs.redhat.com/docs/en-US/JBoss_Developer_Studio/index.html">Red Hat Documentation</ulink> website under the <guilabel>JBoss Developer Studio</guilabel> section.
+ </para>
+</preface>
+
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Revision_History.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Revision_History.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/Revision_History.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,52 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE Book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+]>
+<appendix>
+ <title>Revision History</title>
+ <simpara>
+ <revhistory>
+ <revision>
+ <revnumber>2-0</revnumber>
+ <date>Fri Jan 21 2011</date>
+ <author>
+ <firstname>JBoss Tools</firstname>
+ <surname>Documentation Team</surname>
+ <email>mcaspers at redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>General updates</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-0</revnumber>
+ <date>Wed Jun 09 2010</date>
+ <author>
+ <firstname>JBoss Tools</firstname>
+ <surname>Documentation Team</surname>
+ <email>irooskov at redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>General updates</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>0-0</revnumber>
+ <date>Fri Nov 20 2009</date>
+ <author>
+ <firstname>Isaac</firstname>
+ <surname>Rooskov</surname>
+ <email>irooskov at redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Initial creation of book by publican</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ </revhistory>
+ </simpara>
+</appendix>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/TestHibernate_for_hibernate_jboss_tools.zip
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/TestHibernate_for_hibernate_jboss_tools.zip
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/TestHibernate_for_hibernate_jboss_tools_331.zip
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/TestHibernate_for_hibernate_jboss_tools_331.zip
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/ant.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/ant.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/ant.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,1154 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<chapter id="ant">
+ <title>Ant Tools</title>
+
+ <para>This chapter demonstrates how to use Hibernate Tools via Ant tasks.</para>
+
+ <section>
+ <title>Introduction</title>
+
+ <para>
+ The <filename>hibernate-tools.jar</filename> file, available from <ulink url="http://www.hibernate.org/subprojects/tools.html">tools.hibernate.org</ulink>, contains the core code for <productname>Hibernate Tools</productname>. It is used as the basis for both the Ant tasks described in this document and the Eclipse plugins available as part of JBoss Developer Studio. The <filename>hibernate-tools.jar</filename> file is located in your Eclipse plugins directory at <filename>/plugins/org.hibernate.eclipse.x.x.x/lib/tools/hibernate-tools.jar</filename>.
+ </para>
+ <para>This jar is 100% independent from the Eclipse platform and can thus be used independently of Eclipse.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>
+ There may be incompatibilities with respect to the <filename>hibernate3.jar</filename> bundled with the tools and your own JAR. To avoid any confusion it is recommended that you use the <filename>hibernate3.jar</filename> and <filename>hibernate-annotations.jar</filename> files bundled with the tools when you want to use the Ant tasks. Do not worry about using the JAR's from a later version of Hibernate (e.g. Hibernate 3.2) with a project using an earlier version of Hibernate (e.g. a Hibernate 3.1) since the generated output will work with previous Hibernate 3 versions.
+ </para>
+ </note>
+ </section>
+
+ <section>
+ <title>The <hibernatetool> Ant Task</title>
+
+ <para>
+ To use the Ant tasks you need to have the <code>hibernatetool</code> task defined. That is done in your <filename>build.xml</filename> file by inserting the following XML (assuming the JARs are located in the <filename>lib</filename> directory):
+ </para>
+
+ <programlisting role="XML"><![CDATA[<path id="toolslib">
+ <path location="lib/hibernate-tools.jar" />
+ <path location="lib/hibernate3.jar" />
+ <path location="lib/freemarker.jar" />
+ <path location="${jdbc.driver.jar}" />
+</path>
+
+<taskdef name="hibernatetool"
+ classname="org.hibernate.tool.ant.HibernateToolTask"
+ classpathref="toolslib" />
+]]></programlisting>
+
+ <para>
+ This <code><taskdef></code> defines an Ant task called <code> hibernatetool </code> which now can be used anywhere in your Ant <filename>build.xml</filename> files. It is important to include all the <productname>Hibernate Tools</productname> dependencies as well as the JDBC driver.
+ </para>
+
+ <para>
+ Notice that to use the annotation based Configuration you must <ulink url="http://www.hibernate.org/">get a release</ulink>.
+ </para>
+
+ <para/>
+
+ <para>When using the <code>hibernatetool</code> task you have to specify one or more of the following:</para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool
+ destdir="defaultDestinationDirectory"
+ templatepath="defaultTemplatePath"
+>
+ <classpath ...>
+ <property key="propertyName" value="value"/>
+ <propertyset ...>
+ (<configuration ...>|<annotationconfiguration ...>|
+ <jpaconfiguration ...>|<jdbcconfiguration ...>)
+ (<hbm2java>,<hbm2cfgxml>,<hbmtemplate>,...)
+</hibernatetool>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Hibernatetool attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>
+ <para>destdir</para>
+ </entry>
+
+ <entry>
+ <para>Destination directory for files generated with the exporters</para>
+ </entry>
+
+ <entry>
+ <para>Required</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>templatepath</para>
+ </entry>
+
+ <entry>
+ <para>A path used for looking up user-edited templates</para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>classpath</para>
+ </entry>
+
+ <entry>
+ <para>A classpath to be used to resolve resources, such as mappings and user types</para>
+ </entry>
+
+ <entry>
+ <para>Optional, but very often required</para>
+ </entry>
+ </row>
+
+
+ <row>
+ <entry>
+ <para>property (and propertyset)</para>
+ </entry>
+
+ <entry>
+ <para>Used to set properties that control the exporters. Mostly relevant for providing custom properties to user defined templates</para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>configuration (annotationconfiguration, jpaconfiguration, jdbcconfiguration)</para>
+ </entry>
+
+ <entry>
+ <para>One of four different ways of configuring the Hibernate Meta Model must be specified</para>
+ </entry>
+
+ <entry>
+ <para/>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>hbm2java (hbm2cfgxml, hbmtemplate, etc.)</para>
+ </entry>
+
+ <entry>
+ <para>One or more of the exporters must be specified</para>
+ </entry>
+
+ <entry>
+ <para/>
+ </entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ <section>
+ <title>Basic examples</title>
+
+ <para>
+ The following example shows the most basic setup for generating POJOs via <code><hbm2java></code> from a normal <filename>hibernate.cfg.xml</filename> file. The output will be placed in the <filename>${build.dir}/generated</filename> directory.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <classpath>
+ <path location="${build.dir}/classes"/>
+ </classpath>
+
+ <configuration configurationfile="hibernate.cfg.xml"/>
+ <hbm2java/>
+</hibernatetool>]]></programlisting>
+
+
+ <para>
+ The following example is similar, but now we are performing multiple exports from the same configuration. We are exporting the schema via <code><hbm2dll></code>, generating some DAO code via <code><hbm2dao></code>, and finally running some custom code generation via <code><hbmtemplate></code>. This is again from a normal <filename>hibernate.cfg.xml</filename> file, and the output is still placed in the <filename>${build.dir}/generated</filename> directory.
+ </para>
+
+ <para>
+ The example also shows how a classpath is specified, which is useful when you have custom user types or some mappings that are required to be looked up as a classpath resource.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <classpath>
+ <path location="${build.dir}/classes"/>
+ </classpath>
+
+ <configuration configurationfile="hibernate.cfg.xml"/>
+ <hbm2ddl/>
+ <hbm2dao/>
+ <hbmtemplate
+ filepattern="{package-name}/I{class-name}Constants.java"
+ templatepath="${etc.dir}/customtemplates"
+ template="myconstants.vm"
+ />
+</hibernatetool>]]></programlisting>
+
+ </section>
+ </section>
+
+ <section>
+ <title>Hibernate Configurations</title>
+
+ <para>
+ <productname>Hibernatetool</productname> supports four different Hibernate configurations: A standard Hibernate configuration (<code><configuration></code>), Annotation based configuration (<code><annotationconfiguration></code>), JPA persistence based configuration (<code><jpaconfiguration></code>) and a JDBC based configuration (<code><jdbcconfiguration></code>) used when reverse engineering.
+ </para>
+
+ <para>
+ Each can be used to build a Hibernate Configuration object, from which a set of exporters can be run in order to generate various output formats.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>
+ Output can be anything, e.g. specific files, statements execution against a database, error reporting or anything else that can be done in Java code.
+ </para>
+ </note>
+
+ <para>The following sections describe what the various configurations can do, as well as listing their individual settings.</para>
+
+ <section>
+ <title>Standard Hibernate Configuration (<configuration>)</title>
+
+ <para>
+ A <code><configuration></code> tag is used to define a standard Hibernate configuration. A standard Hibernate configuration reads the mappings from a <filename>cfg.xml</filename> file and/or a fileset.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<configuration
+ configurationfile="hibernate.cfg.xml"
+ propertyfile="hibernate.properties"
+ entityresolver="EntityResolver classname"
+ namingstrategy="NamingStrategy classname"
+>
+ <fileset...>
+
+ </configuration>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Configuration attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>
+ <para>configurationfile</para>
+ </entry>
+
+ <entry>
+ <para>The name of a Hibernate configuration file, e.g. <filename>hibernate.cfg.xml</filename>.</para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>propertyfile</para>
+ </entry>
+
+ <entry>
+ <para>The name of a property file, e.g. <filename>hibernate.properties</filename>.</para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>entity-resolver</para>
+ </entry>
+
+ <entry>
+ <para>Name of a class that implements <code>org.xml.sax.EntityResolver</code>. Used if the mapping files require custom entity resolver.</para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+
+ <row>
+ <entry>
+ <para>namingstrategy</para>
+ </entry>
+
+ <entry>
+ <para>
+ Name of a class that implements <code>org.hibernate.cfg.NamingStrategy</code>. Used for setting up the naming strategy in Hibernate which controls the automatic naming of tables and columns. In JPA projects naming strategy is supported for default Name/Columns mapping.
+ </para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>fileset</para>
+ </entry>
+
+ <entry>
+ <para>
+ A standard Ant fileset. Used to include hibernate mapping files. Remember that if mappings are already specified in the <filename>hibernate.cfg.xml</filename> then it should not be included via the fileset as it will result in duplicate import exceptions.
+ </para>
+ </entry>
+
+ <entry>
+ <para/>
+ </entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ <section>
+ <title>Example</title>
+
+ <para>
+ This example shows an example where no <filename>hibernate.cfg.xml</filename> file exists, and a <filename>hibernate.properties</filename> file and fileset is used instead.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>
+ Hibernate will still read any global <filename>hibernate.properties</filename> files available in the classpath, but the specified properties file here will override those values for any non-global property.
+ </para>
+ </note>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <configuration propertyfile="{etc.dir}/hibernate.properties">
+ <fileset dir="${src.dir}">
+ <include name="**/*.hbm.xml"/>
+ <exclude name="**/*Test.hbm.xml"/>
+ </fileset>
+ </configuration>
+
+ <!-- list exporters here -->
+
+</hibernatetool>]]></programlisting>
+
+ </section>
+ </section>
+
+ <section>
+ <title>Annotation based Configuration (<annotationconfiguration>)</title>
+
+ <para>An <code><annotationconfiguration></code> tag is used when you want to read the metamodel from EJB3 or Hibernate Annotations based POJO's.</para>
+
+ <important>
+ <title>Important:</title>
+ <para>
+ To use an <code><annotationconfiguration></code> tag remember to place the JAR files required to use Hibernate annotations in the classpath of the <code><taskdef></code>, i.e. <filename>hibernate-annotations.jar</filename> and <filename>hibernate-commons-annotations.jar</filename>.
+ </para>
+ </important>
+
+ <para>
+ The <code><annotationconfiguration></code> tag supports the same attributes as the <code><configuration></code> tag, with the exception being that the <code>configurationfile</code> attribute is now required as that is where an <emphasis>AnnotationConfiguration</emphasis> gets the list of classes and packages it should load.
+ </para>
+
+ <para>Thus the minimal usage is:</para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <annotationconfiguration
+ configurationfile="hibernate.cfg.xml"/>
+
+ <!-- list exporters here -->
+
+</hibernatetool>
+]]></programlisting>
+
+ </section>
+
+ <section>
+ <title>JPA based configuration (<jpaconfiguration>)</title>
+
+ <para>
+ A <code><jpaconfiguration></code> tag is used when you want to read the metamodel from JPA or Hibernate Annotation where you want to use the auto-scan configuration as defined in the JPA specification (part of EJB3). In other words, when you do not have a <filename>hibernate.cfg.xml</filename>, but instead have a setup where you use a <filename>persistence.xml</filename> file packaged in a JPA compliant manner.
+ </para>
+
+ <para>
+ The <code><jpaconfiguration></code> tag will try and auto-configure it self based on the available classpath, e.g. look for the <filename>META-INF/persistence.xml</filename> file.
+ </para>
+
+ <para>
+ The <code>persistenceunit</code> attribute can be used to select a specific persistence unit. If no <code>persistenceunit</code> attribute is specified it will automatically search for one, and if a unique one is found, use it. However, having multiple persistence units will result in an error.
+ </para>
+
+ <para>
+ To use a <code><jpaconfiguration></code> tag you will need to specify some additional JARs from the Hibernate EntityManager in the <code><taskdef></code> section of the hibernatetool. The following demonstrates a full setup:
+ </para>
+
+ <programlisting role="XML"><![CDATA[<path id="ejb3toolslib">
+ <path refid="jpatoolslib"/> <!-- ref to previously defined toolslib -->
+ <path location="lib/hibernate-annotations.jar" />
+ <path location="lib/ejb3-persistence.jar" />
+ <path location="lib/hibernate-entitymanager.jar" />
+ <path location="lib/jboss-archive-browsing.jar" />
+ <path location="lib/javaassist.jar" />
+</path>
+
+<taskdef name="hibernatetool"
+ classname="org.hibernate.tool.ant.HibernateToolTask"
+ classpathref="jpatoolslib" />
+
+<hibernatetool destdir="${build.dir}">
+ <jpaconfiguration persistenceunit="caveatemptor"/>
+ <classpath>
+ <!-- it is in this classpath you put your classes dir,
+ and/or jpa persistence compliant jar -->
+ <path location="${build.dir}/jpa/classes" />
+ </classpath>
+
+ <!-- list exporters here -->
+
+</hibernatetool>
+]]></programlisting>
+
+
+ <note>
+ <title>Note:</title>
+ <para>
+ <literal>ejb3configuration</literal> was the name used in previous versions. It still works but will display a warning telling you to use <literal>jpaconfiguration</literal> instead.
+ </para>
+ </note>
+
+ </section>
+
+ <section>
+ <title>JDBC Configuration for reverse engineering (<jdbcconfiguration>)</title>
+
+ <para>A <code><jdbcconfiguration></code> tag is used to perform reverse engineering of a database from a JDBC connection.</para>
+
+ <para>
+ This configuration works by reading the connection properties either from a <filename>hibernate.cfg.xml</filename> file or a <filename>hibernate.properties</filename> file with a fileset.
+ </para>
+
+ <para>
+ The <code><jdbcconfiguration></code> tag has the same attributes as a <code><configuration></code> tag, plus the following additional attributes:
+ </para>
+
+ <programlisting role="XML"><![CDATA[<jdbcconfiguration
+ ...
+ packagename="package.name"
+ revengfile="hibernate.reveng.xml"
+ reversestrategy="ReverseEngineeringStrategy classname"
+ detectmanytomany="true|false"
+ detectoptmisticlock="true|false"
+>
+ ...
+ </jdbcconfiguration>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Jdbcconfiguration attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>
+ <para>packagename</para>
+ </entry>
+
+ <entry>
+ <para>The default package name to use when mappings for classes are created</para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>revengfile</para>
+ </entry>
+
+ <entry>
+ <para>The name of a property file, e.g. <filename>hibernate.properties</filename></para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>reversestrategy</para>
+ </entry>
+
+ <entry>
+ <para>
+ Name of a class that implements <filename>org.hibernate.cfg.reveng.ReverseEngineeringStrategy</filename>. Used for setting up the strategy the tools will use to control the reverse engineering, e.g. naming of properties, which tables to include or exclude etc. Using a class instead of (or as addition to) a <filename>reveng.xml</filename> file gives you full programmatic control of the reverse engineering.
+ </para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+
+ <row>
+ <entry>
+ <para>detectManytoMany</para>
+ </entry>
+
+ <entry>
+ <para>
+ If true, tables which are pure many-to-many link tables will be mapped as such. A pure many-to-many table is one which primary-key contains exactly two foreign-keys pointing to other entity tables and has no other columns.
+ </para>
+ </entry>
+
+ <entry>
+ <para>Default: true</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>detectOptimisticLock</para>
+ </entry>
+
+ <entry>
+ <para>
+ If true, columns named VERSION or TIMESTAMP with appropriate types will be mapped with the appropriate optimistic locking corresponding to
+ <code><version></code> or <code><timestamp></code>.
+ </para>
+ </entry>
+
+ <entry>
+ <para>Default: true</para>
+ </entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ <section>
+ <title>Example</title>
+
+ <para>
+ Here is an example using a <code><jdbcconfiguration></code> tag to generate Hibernate XML mappings via <code><hbm2hbmxml></code>. The connection settings used here are read from a <filename>hibernate.properties</filename> file, but they could also have been defined in a <filename>hibernate.cfg.xml</filename> file.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool>
+ <jdbcconfiguration propertyfile="etc/hibernate.properties" />
+ <hbm2hbmxml destdir="${build.dir}/src" />
+</hibernatetool>
+]]></programlisting>
+ </section>
+ </section>
+ </section>
+
+ <section>
+ <title>Exporters</title>
+
+ <para>
+ Exporters do the actual job of converting the Hibernate metamodel into various artifacts, mainly code. The following section describes the current supported set of exporters in the <productname>Hibernate Tool</productname> distribution. It is also possible to implement user defined exporters, which is done through the <code><hbmtemplate></code> exporter.
+ </para>
+
+ <section>
+ <title>Database schema exporter (<hbm2ddl>)</title>
+
+ <para>
+ <code><hbm2ddl></code> lets you run schemaexport and schemaupdate which generates the appropriate SQL DDL and allow you to store the result in a file or export it directly to the database. Remember that if a custom naming strategy is needed it is defined in the configuration element.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hbm2ddl
+ export="true|false"
+ update="true|false"
+ drop="true|false"
+ create="true|false"
+ outputfilename="filename.ddl"
+ delimiter=";"
+ format="true|false"
+ haltonerror="true|false"
+ >]]></programlisting>
+
+ <table frame="topbot">
+ <title>Hbm2ddl exporter attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>
+ <para>export</para>
+ </entry>
+
+ <entry>
+ <para>Executes the generated statements against the database</para>
+ </entry>
+
+ <entry>
+ <para>Default: true</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>update</para>
+ </entry>
+
+ <entry>
+ <para>
+ Try and create an update script representing the "delta" that is, between what is in the database and what the mappings specify. Ignores create and update attributes. (<emphasis>Do *not* use against production databases, as there are no guarantees that the proper delta can be generated, nor that the underlying database can actually execute the required operations</emphasis>).
+ </para>
+ </entry>
+
+ <entry>
+ <para>Default: false</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>drop</para>
+ </entry>
+
+ <entry>
+ <para>Output will contain drop statements for the tables, indices and constraints</para>
+ </entry>
+
+ <entry>
+ <para>Default: false</para>
+ </entry>
+ </row>
+
+
+ <row>
+ <entry>
+ <para>create</para>
+ </entry>
+
+ <entry>
+ <para>Output will contain create statements for the tables, indices and constraints</para>
+ </entry>
+
+ <entry>
+ <para>Default: true</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>outputfilename</para>
+ </entry>
+
+ <entry>
+ <para>If specified the statements will be dumped to this file</para>
+ </entry>
+
+ <entry>
+ <para>Optional</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>delimiter</para>
+ </entry>
+
+ <entry>
+ <para>If specified the statements will be dumped to this file</para>
+ </entry>
+
+ <entry>
+ <para>Default: ";"</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>format</para>
+ </entry>
+
+ <entry>
+ <para>Apply basic formatting to the statements</para>
+ </entry>
+
+ <entry>
+ <para>Default: false</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>haltonerror</para>
+ </entry>
+
+ <entry>
+ <para>Halt build process if an error occurs</para>
+ </entry>
+
+ <entry>
+ <para>Default: false</para>
+ </entry>
+ </row>
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ <section>
+ <title>Example</title>
+
+ <para>
+ Below is a basic example of using <code><hbm2ddl></code>, which does not export to the database but simply dumps the SQL to a file named <filename>sql.ddl</filename>.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <configuration configurationfile="hibernate.cfg.xml"/>
+ <hbm2ddl export="false" outputfilename="sql.ddl"/>
+</hibernatetool>]]></programlisting>
+ </section>
+ </section>
+
+ <section>
+ <title>POJO java code exporter (<hbm2java>)</title>
+
+ <para>
+ <code><hbm2java></code> is a Java code generator. Options for controlling whether JDK 5 syntax can be used and whether the POJO should be annotated with EJB3/Hibernate Annotations.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hbm2java
+ jdk5="true|false"
+ ejb3="true|false"
+>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Hbm2java exporter attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Default value</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>
+ <para>jdk</para>
+ </entry>
+
+ <entry>
+ <para>Code will contain JDK 5 constructs such as generics and static imports</para>
+ </entry>
+
+ <entry>
+ <para>False</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>ejb3</para>
+ </entry>
+
+ <entry>
+ <para>
+ Code will contain EJB 3 features, e.g. using annotations from <code>javax.persistence</code> and <code>org.hibernate.annotations</code>
+ </para>
+ </entry>
+
+ <entry>
+ <para>False</para>
+ </entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ <section>
+ <title>Example</title>
+
+ <para>Here is a basic example using <code><hbm2java></code> to generate POJO's that utilize JDK5 constructs.</para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <configuration configurationfile="hibernate.cfg.xml"/>
+ <hbm2java jdk5="true"/>
+</hibernatetool>]]></programlisting>
+ </section>
+ </section>
+
+ <section>
+ <title>Hibernate Mapping files exporter (<hbm2hbmxml>)</title>
+
+ <para>
+ <code><hbm2hbmxml></code> generates a set of <filename>.hbm</filename> files. It is intended to be used together with a <code><jdbcconfiguration></code> when performing reverse engineering, but can be used with any kind of configuration e.g. to convert from annotation based POJO's to a <filename>hbm.xml</filename> file.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>
+ Not every possible mapping transformation is possible/implemented (contributions welcome) so some hand editing might be required.
+ </para>
+ </note>
+
+ <programlisting role="XML"><![CDATA[<hbm2hbmxml/>]]></programlisting>
+
+ <section>
+ <title>Example</title>
+
+ <para>Basic usage of <code><hbm2hbmxml></code>. </para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <configuration configurationfile="hibernate.cfg.xml"/>
+ <hbm2hbmxml/>
+</hibernatetool>]]></programlisting>
+
+ <para>
+ <code><hbm2hbmxml></code> is normally used with a <code><jdbcconfiguration></code> like in the above example, but any other configuration can also be used to convert between the different ways of performing mappings. Here is an example of that, using an <code><annotationconfiguration></code>.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>Not all conversions are implemented (contributions welcome), so some hand editing might be necessary.</para>
+ </note>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+ <annotationconfiguration configurationfile="hibernate.cfg.xml"/>
+ <hbm2hbmxml/>
+</hibernatetool>]]></programlisting>
+ </section>
+ </section>
+
+ <section>
+ <title>Hibernate Configuration file exporter (<hbm2cfgxml>)</title>
+
+ <para>
+ <code><hbm2cfgxml></code> generates a <filename>hibernate.cfg.xml</filename> file. It is intended to be used together with a <code><jdbcconfiguration></code> when performing reverse engineering, but it can be used with any kind of configuration. The <code><hbm2cfgxml></code> will contain the properties that are used and adds mapping entries for each mapped class.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hbm2cfgxml
+ ejb3="true|false"
+/>
+]]></programlisting>
+
+ <table frame="topbot">
+ <title>Hbm2cfgxml exporter attribute</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Default value</entry>
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry>
+ <para>ejb3</para>
+ </entry>
+
+ <entry>
+ <para>
+ The generated <filename>cfg.xml</filename> will have <mapping class=".."/>, opposed to <mapping resource="..."/> for each mapping.
+ </para>
+ </entry>
+
+ <entry>
+ <para>False</para>
+ </entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ </section>
+
+ <section>
+ <title>Documentation exporter (<hbm2doc>)</title>
+
+ <para><code><hbm2doc></code> generates HTML documentation similar to Javadoc for the database schema et.al.</para>
+
+ <programlisting role="XML"><![CDATA[<hbm2doc/>]]></programlisting>
+ </section>
+
+ <section>
+ <title>Query exporter (<query>)</title>
+
+ <para>
+ <code><query></code> is used to execute HQL query statements and optionally redirects the output to a file. It can be used for verifying the mappings and for basic data extraction.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<query
+ destfile="filename">
+ <hql>[a HQL query string]</hql>
+</query>
+]]></programlisting>
+
+ <para>
+ Currently one session is opened and used for all queries, which are executed via the <code>list()</code> method. In the future more options might become available, like executing <code>executeUpdate()</code>, use named queries and etc.
+ </para>
+
+ <para/>
+
+ <section>
+ <title>Examples</title>
+
+ <para>
+ The simplest usage of <code><query></code> will execute the query without dumping to a file. This can be used to verify that queries can be performed successfully.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool>
+ <configuration configurationfile="hibernate.cfg.xml"/>
+ <query>from java.lang.Object</query>
+</hibernatetool>]]></programlisting>
+
+ <para>
+ Multiple queries can be executed by nested <code><hql></code> elements. In this example we also let the output be dumped to the <filename>queryresult.txt</filename> file.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para> Currently the dump is performed by calling the <code>toString()</code> function on each element.</para>
+ </note>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool>
+ <configuration configurationfile="hibernate.cfg.xml"/>
+ <query destfile="queryresult.txt">
+ <hql>select c.name from Customer c where c.age > 42</hql>
+ <hql>from Cat</hql>
+</hibernatetool>]]></programlisting>
+
+ </section>
+ </section>
+
+ <section id="hbmtemplate">
+ <title>Generic Hibernate metamodel exporter (<hbmtemplate>)</title>
+
+ <para>Below is an example of a generic exporter that can be controlled by a user provided template or class.</para>
+
+ <programlisting role="XML"><![CDATA[<hbmtemplate
+ filepattern="{package-name}/{class-name}.ftl"
+ template="somename.ftl"
+ exporterclass="Exporter classname"
+/>]]></programlisting>
+
+ <note>
+ <title>Note:</title>
+ <para>Previous versions of the tools used <productname>Velocity</productname>. We are now using <productname>Freemarker</productname>, which provides much better exception and error handling.
+ </para>
+ </note>
+
+ <section>
+ <title>Exporter via <hbmtemplate></title>
+
+ <para>
+ The following is an example of reverse engineering via a <code><jdbcconfiguration></code> tag and the use of a custom Exporter via the <code><hbmtemplate></code> tag.
+ </para>
+
+ <programlisting role="XML"><![CDATA[ <hibernatetool destdir="${destdir}">
+ <jdbcconfiguration
+ configurationfile="hibernate.cfg.xml"
+ packagename="my.model"/>
+
+ <!-- setup properties -->
+ <property key="appname" value="Registration"/>
+ <property key="shortname" value="crud"/>
+
+ <hbmtemplate
+ exporterclass="my.own.Exporter"
+ filepattern="."/>
+
+</hibernatetool>
+]]></programlisting>
+
+ </section>
+ <section>
+ <title>Relevant Resources Links</title>
+
+ <para>
+ You can read more about <ulink url="http://velocity.apache.org/">Velocity</ulink> and <ulink url="http://freemarker.org/">Freemarker</ulink> to find out why using the latter is better or refer to Max Andersens discussion on the topic in <ulink url="http://in.relation.to/2110.lace;jsessionid=3462F47B17556604C15DF1B96572E940">"A story about FreeMarker and Velocity"</ulink>.
+ </para>
+ </section>
+ </section>
+ </section>
+
+
+
+ <section>
+ <title>Using properties to configure Exporters</title>
+
+ <para>
+ Exporters can be controlled by user properties. These user properties are specified via a <code><property></code> or <code><propertyset></code> tag, and each exporter will have access to them directly in the templates and via <code>Exporter.setProperties()</code>.
+ </para>
+
+ <section>
+ <title><property> and <propertyset></title>
+
+ <para>
+ The <code><property></code> tag allows you bind a string value to a key. The value will be available in the templates via the <code>$<key></code> tag. The following example will assign the string value <code>"true"</code> to the variable <code>$descriptors</code>.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<property key="descriptors" value="true"/>]]></programlisting>
+
+ <para>
+ Usually using the <code><property></code> tag is enough when specifying the properties required by the exporters. Still, the Ant tools supports the notion of a <code><propertyset></code> which is used for grouping a set of properties. More about the functionality of <code><propertyset></code> is can be found in the <ulink url="http://ant.apache.org/manual/">Ant manual</ulink>.
+ </para>
+ </section>
+
+ <section>
+ <title>Getting access to user specific classes</title>
+
+ <para>It is possible for the templates to access user classes by specifying a <code>"toolclass"</code> in the properties.</para>
+
+ <programlisting role="XML"><![CDATA[<property key="hibernatetool.sometool.toolclass" value="x.y.z.NameOfToolClass"/>]]></programlisting>
+
+ <para>
+ Placing the above <code><property></code> tag in the <code><hibernatetool></code> tag or inside any exporter will automatically create an instance of <code>x.y.z.NameOfToolClass</code> which will be available in the templates as <code>$sometool</code>. This is useful to delegate logic and code generation to Java code instead of placing such logic in the templates.
+ </para>
+
+ <section>
+ <title>Example</title>
+
+ <para>
+ Here is an example that uses the <code><hbmtemplate></code> tag together with the <code><property></code> tag, which will be available to the templates and exporter.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para> This example actually simulates what the <code><hbm2java></code> tag does.</para>
+ </note>
+
+ <programlisting role="XML"><![CDATA[<hibernatetool destdir="${build.dir}/generated">
+<configuration
+ configurationfile="etc/hibernate.cfg.xml"/>
+ <hbmtemplate
+ templateprefix="pojo/"
+ template="pojo/Pojo.ftl"
+ filepattern="{package-name}/{class-name}.java">
+ <property key="jdk5" value="true" />
+ <property key="ejb3" value="true" />
+ </hbmtemplate>
+</hibernatetool>
+]]></programlisting>
+ </section>
+ </section>
+ </section>
+</chapter>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegen.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegen.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegen.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,551 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="codegen">
+ <title>Controlling POJO code generation</title>
+
+ <para>
+ When using the <code><hbm2java></code> tag or the Eclipse plugin to generate POJO Java code you have the ability to control certain aspects of the code generation process. This is primarily done with the <code><meta></code> tag in the mapping files. The following section describes the possible <code><meta></code> tags and their use.
+ </para>
+
+ <section>
+ <title>The <meta> attribute</title>
+
+ <para>
+ The <code><meta></code> tag is a simple way of annotating the <filename>hbm.xml</filename> file with information, so tools have a natural place to store and read information that is not directly related to the Hibernate core.
+ </para>
+
+ <para>
+ As an example, you can use the <code><meta></code> tag to tell the <code><hbm2java></code> tag to only generate <code>"protected"</code> setters, have classes always implement a certain set of interfaces, have them extend a certain base class and more.
+ </para>
+
+ <para>The following example shows how to use various <code><meta></code> attributes and the resulting Java code.</para>
+
+ <programlisting role="XML"><![CDATA[<class name="Person">
+ <meta attribute="class-description">
+ Javadoc for the Person class
+ @author Frodo
+ </meta>
+ <meta attribute="implements">IAuditable</meta>
+ <id name="id" type="long">
+ <meta attribute="scope-set">protected</meta>
+ <generator class="increment"/>
+ </id>
+ <property name="name" type="string">
+ <meta attribute="field-description">The name of the person</meta>
+ </property>
+</class>]]></programlisting>
+
+ <para>
+ The above <filename>hbm.xml</filename> file will produce something like the following (the code has been abbreviated for clarity). Notice the Javadoc comment and the protected set methods:
+ </para>
+
+ <programlisting role="JAVA"><![CDATA[// default package
+
+import java.io.Serializable;
+import org.apache.commons.lang.builder.EqualsBuilder;
+import org.apache.commons.lang.builder.HashCodeBuilder;
+import org.apache.commons.lang.builder.ToStringBuilder;
+
+/**
+ * Javadoc for the Person class
+ * @author Frodo
+ */
+public class Person implements Serializable, IAuditable {
+
+ public Long id;
+
+ public String name;
+
+ public Person(java.lang.String name) {
+ this.name = name;
+ }
+
+ public Person() {
+ }
+
+ public java.lang.Long getId() {
+ return this.id;
+ }
+
+ protected void setId(java.lang.Long id) {
+ this.id = id;
+ }
+
+ /**
+ * The name of the person
+ */
+ public java.lang.String getName() {
+ return this.name;
+ }
+
+ public void setName(java.lang.String name) {
+ this.name = name;
+ }
+
+}]]></programlisting>
+
+ <table frame="topbot">
+ <title>Supported meta tags</title>
+
+ <tgroup cols="2">
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="2*"/>
+
+ <thead>
+ <row>
+ <entry>Attribute</entry>
+
+ <entry>Description</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>
+ <literal>class-description</literal>
+ </entry>
+
+ <entry>inserted into the Javadoc for classes</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>field-description</literal>
+ </entry>
+
+ <entry>inserted into the Javadoc for fields and properties</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>interface</literal>
+ </entry>
+
+ <entry>If true, an interface is generated instead of an class.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>implements</literal>
+ </entry>
+
+ <entry>interface the class should implement</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>extends</literal>
+ </entry>
+
+ <entry>class that the current class should extend (ignored for subclasses)</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>generated-class</literal>
+ </entry>
+
+ <entry>overrule the name of the actual class generated</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>scope-class</literal>
+ </entry>
+
+ <entry>scope for class</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>scope-set</literal>
+ </entry>
+
+ <entry>scope for setter method</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>scope-get</literal>
+ </entry>
+
+ <entry>scope for getter method</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>scope-field</literal>
+ </entry>
+
+ <entry>scope for actual field</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>default-value</literal>
+ </entry>
+
+ <entry>Default initialization value for a field.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>use-in-tostring</literal>
+ </entry>
+
+ <entry>Include this property in the <code>toString()</code> method.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>use-in-equals</literal>
+ </entry>
+
+ <entry>
+ Include this property in the <code>equals()</code> and <code>hashCode()</code> methods. If no use-in-equals is specified, no equals or hashcode method will be generated.
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>gen-property</literal>
+ </entry>
+
+ <entry>Property will not be generated if false (use with care).</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>property-type</literal>
+ </entry>
+
+ <entry>Overrides the default type of property. Use this with any tag's to specify the concrete type instead of just <code>Object</code>.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>class-code</literal>
+ </entry>
+
+ <entry>Extra code that will inserted at the end of the class</entry>
+ </row>
+
+ <row>
+ <entry>
+ <literal>extra-import</literal>
+ </entry>
+
+ <entry>Extra import that will inserted at the end of all other imports</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para>
+ Attributes declared via the <code><meta></code> tag <code>"inherited"</code> inside an <code>hbm.xml</code> file by default.
+ </para>
+
+ <para>
+ What does that mean? As an example if you want to have all your classes implement <code>IAuditable</code> then you just add <code> <meta attribute="implements">IAuditable</meta></code> in the top of the <filename>hbm.xml</filename> file, just after <code><hibernate-mapping></code>. Now all classes defined in that <filename>hbm.xml</filename> file will implement <code>IAuditable</code>.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>
+ This applies to <emphasis>all</emphasis> <code><meta></code>-tags. Thus it can also be used to specify that all fields should be declare <code>protected</code>, instead of the default <code>private</code>. This is done by adding <code><meta attribute="scope-field">protected</meta></code> just under the <code><class></code> tag, and all fields of that class will be <code>protected</code>.
+ </para>
+ </note>
+
+ <para>
+ To avoid having a <code><meta></code> tag inherited then you can specify <code> inherit = "false"</code> for the attribute. For example <code> <meta attribute = "scope-class" inherit = "false">public abstract</meta></code> will restrict the <code>"class-scope"</code> to the current class, not the subclasses.
+ </para>
+
+ <section>
+ <title>Recommendations</title>
+
+ <para>The following are some good practices to employ when using <code><meta></code> attributes.</para>
+
+ <section>
+ <title>Dangers of a class level <property>use-in-string and use-in-equals</property> meta attributes when using bi-directional associations</title>
+
+ <para>
+ In the following example we have two entities with a bi-directional association between them and define the <code>use-in-string</code> and <code>use-in-equals</code> meta attributes at the class scope level the meta attributes:
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hibernate-mapping>
+ <class name="Person">
+ <meta attribute="use-in-tostring">true</meta>
+ <meta attribute="use-in-equals">true</meta>
+ ...
+ </class>
+</hibernate-mapping>]]></programlisting>
+
+ <para>Here is the <filename>Event.hbm</filename> file:</para>
+
+ <programlisting role="XML"><![CDATA[<hibernate-mapping>
+ <class name="events.Event" table="EVENTS">
+ <meta attribute="use-in-tostring">true</meta>
+ <meta attribute="use-in-equals">true</meta>
+ <id name="id" column="EVENT_ID">
+ <generator class="native"/>
+ </id>
+ <property name="date" type="timestamp" column="EVENT_DATE"/>
+ <property name="title"/>
+ <set name="participants" table="PERSON_EVENT" inverse="true">
+ <key column="EVENT_ID"/>
+ <many-to-many column="PERSON_ID" class="events.Person"/>
+ </set>
+ </class>
+</hibernate-mapping>]]></programlisting>
+
+ <para>
+ In this situation the <code><hbm2java></code> tag will assume you want to include all properties and collections in the <code>toString()</code> and <code>equals()</code> methods. This can result in infinite recursive calls.
+ </para>
+
+ <para>
+ To remedy this you have to decide which side of the association will include the other part (if at all) in the <code>toString()</code> and <code>equals()</code> methods. Therefore it is not a good practice to define these <code>meta</code> attributes at the class scope, unless you are defining a class without bi-directional associations.
+ </para>
+
+ <para>Instead it is recommended that the <code>meta</code> attributes are defined at the property level, like so:</para>
+
+ <programlisting role="XML"><![CDATA[<hibernate-mapping>
+ <class name="events.Event" table="EVENTS">
+ <id name="id" column="EVENT_ID">
+ <meta attribute="use-in-tostring">true</meta>
+ <generator class="native"/>
+ </id>
+ <property name="date" type="timestamp" column="EVENT_DATE"/>
+ <property name="title">
+ <meta attribute="use-in-tostring">true</meta>
+ <meta attribute="use-in-equals">true</meta>
+ </property>
+ <set name="participants" table="PERSON_EVENT" inverse="true">
+ <key column="EVENT_ID"/>
+ <many-to-many column="PERSON_ID" class="events.Person"/>
+ </set>
+ </class>
+</hibernate-mapping>]]></programlisting>
+
+ <para>and for <code>Person</code>:</para>
+
+ <programlisting role="XML"><![CDATA[<hibernate-mapping>
+ <class name="Person">
+ <meta attribute="class-description">
+ Javadoc for the Person class
+ @author Frodo
+ </meta>
+ <meta attribute="implements">IAuditable</meta>
+ <id name="id" type="long">
+ <meta attribute="scope-set">protected</meta>
+ <meta attribute="use-in-tostring">true</meta>
+ <generator class="increment"/>
+ </id>
+ <property name="name" type="string">
+ <meta attribute="field-description">The name of the person</meta>
+ <meta attribute="use-in-tostring">true</meta>
+ </property>
+ </class>
+</hibernate-mapping>]]></programlisting>
+ </section>
+
+ <section>
+ <title>Be aware of putting at class scope level <meta> attributeuse-in-equals</title>
+
+ <para>
+ Only attributes with business meaning (e.g. the name, social security number, etc, but no generated id's) should be referenced when calculating the return value for the <code>equal()</code> and <code>hashCode()</code> methods.
+ </para>
+
+ <para>
+ This is important because Java's hashbased collections, such as <code>java.util.Set</code>, rely on <code>equals()</code> and <code>hashcode()</code> being correct and not changing for objects in the set; this can be a problem if the id gets assigned for an object after you inserted it into a set.
+ </para>
+
+ <para>
+ Therefore automatically configuration of the generation of <code>equals()</code> and <code>hashCode()</code> methods specifying the <code><meta></code> attribute <code>use-in-equals</code> at class scope level could be a dangerous decision that could produce unexpected side-effects.
+ </para>
+
+ <para>
+ On <ulink url="http://www.hibernate.org/109.html">www.hibernate.org </ulink> you can find more in-depth explanation on the subject of <code>equals()</code> and <code>hashcode()</code> methods.
+ </para>
+ </section>
+ </section>
+
+ <section>
+ <title>Advanced <meta> attribute examples</title>
+
+ <para>
+ This section shows an example for using meta attributes (including user specific attributes) together with the code generation features in <productname>Hibernate Tools</productname>.
+ </para>
+
+ <para>The example shown below automatically inserts some pre and post conditions into the getter and setter methods of the generated POJO. </para>
+
+ <section>
+ <title>Generate pre/post-conditions for methods</title>
+
+ <para>
+ With <code> <meta attribute="class-code"></code> you can add additional methods on a given class. However, such <code><meta></code> attributes can not be used at a property scope level and <property>Hibernate Tools</property> does not provide such <code><meta></code> attributes.
+ </para>
+
+ <para>
+ A possible solution for this is to modify the Freemarker templates responsible for generating the POJOs. If you look inside the <filename>hibernate-tools.jar</filename> archive, you can find the template <filename>pojo/PojoPropertyAccessor.ftl</filename>.
+ </para>
+
+ <para>As its name indicates, this file is used to generate property accessors for POJOs.</para>
+
+ <para>
+ Extract the <filename>PojoPropertyAccessor.ftl</filename> file into a local folder e.g. <filename>${hbm.template.path}</filename>, respecting the whole path, for example: <filename>${hbm.template.path}/pojo/PojoPropertyAccessor.ftl</filename>.
+ </para>
+
+ <para>The contents of the file will be something like this:</para>
+
+ <programlisting role="XML"><![CDATA[<#foreach property in pojo.getAllPropertiesIterator()>
+ ${pojo.getPropertyGetModifiers(property)}
+ ${pojo.getJavaTypeName(property, jdk5)}
+ ${pojo.getGetterSignature(property)}() {
+ return this.${property.name};
+ }
+
+ ${pojo.getPropertySetModifiers(property)} void set${pojo.getPropertyName(property)}
+ (${pojo.getJavaTypeName(property, jdk5)} ${property.name})
+ {
+ this.${property.name} = ${property.name};
+ }
+</#foreach>]]></programlisting>
+
+ <para>
+ We can add pre and post conditions on our <code>set</code> method generation just by adding a little Freemarker syntax to the above source code:
+ </para>
+
+ <programlisting role="XML"><![CDATA[<#foreach property in pojo.getAllPropertiesIterator()>
+ ${pojo.getPropertyGetModifiers(property)}
+ ${pojo.getJavaTypeName(property, jdk5)}
+ ${pojo.getGetterSignature(property)}()
+ {
+ return this.${property.name};
+ }
+
+ ${pojo.getPropertySetModifiers(property)} void set${pojo.getPropertyName(property)}
+ (${pojo.getJavaTypeName(property, jdk5)} ${property.name})
+ {
+ <#if pojo.hasMetaAttribute(property, "pre-cond")>
+ ${c2j.getMetaAsString(property, "pre-cond","\n")}
+ </#if>
+ this.${property.name} = ${property.name};
+ <#if pojo.hasMetaAttribute(property, "post-cond")>
+ ${c2j.getMetaAsString(property, "post-cond","\n")}
+ </#if>
+}
+</#foreach>]]>
+</programlisting>
+
+ <para>
+ Now if in any <filename>.hbm.xml</filename> file we define the <code><meta></code> attributes: <code>pre-cond</code> or <code>post-cond</code>, and their contents will be generated into the body of the relevant <code>set</code> method.
+ </para>
+
+ <para>
+ As an example let us add a pre-condition for the <code>name</code> property which will prevent the <code>Person</code> class from having an empty name. To achieve this we have to modify the <filename>Person.hbm.xml</filename> file like so:
+ </para>
+
+ <programlisting role="XML"><![CDATA[<hibernate-mapping>
+ <class name="Person">
+ <id name="id" type="long">
+ <generator class="increment"/>
+ </id>
+ <property name="firstName" type="string">
+ <meta attribute="pre-cond">
+ if ((firstName != null) && (firstName.length() == 0) ) {
+ throw new IllegalArgumentException("firstName can not be an empty String");
+ }
+ </meta>
+ </property>
+</class>
+</hibernate-mapping>]]></programlisting>
+
+ <note>
+ <title>Note:</title>
+ <para>I) To escape the <code>&</code> symbol we put <code>&</code><code>amp</code><code>;</code>. You could use <code> <![CDATA[]]></code> instead.</para>
+ <para>
+ II) Note that we are referring to <code>firstName</code> directly and this is the parameter name not the actual field name. If you want to refer the field you have to use <code>this.firstName</code> instead.
+ </para>
+ </note>
+
+ <para>
+ Finally we have to generate the <filename>Person.java</filename> class. For this we can use either Eclipse or Ant, as long as you remember to set or fill in the <code>templatepath</code> setting. For Ant we configure the <code><hibernatetool></code> task via the <code>templatepath</code> attribute as in:
+ </para>
+
+ <programlisting role="XML"><![CDATA[
+ <target name="hbm2java">
+ <taskdef name="hibernatetool"
+ classname="org.hibernate.tool.ant.HibernateToolTask"
+ classpathref="lib.classpath"/>
+ <hibernatetool destdir="${hbm2java.dest.dir}"
+ templatepath="${hbm.template.path}">
+ <classpath>
+ <path refid="pojo.classpath"/>
+ </classpath>
+ <configuration>
+ <fileset dir="${hbm2java.src.dir}">
+ <include name="**/*.hbm.xml"/>
+ </fileset>
+ </configuration>
+ <hbm2java/>
+ </hibernatetool>
+ </target>]]></programlisting>
+
+ <para>
+ Invoking the target <code><hbm2java></code> will generate file <filename>Person.java</filename> in <filename>${hbm2java.dest.dir}</filename>:
+ </para>
+
+ <programlisting role="JAVA"><![CDATA[// default package
+import java.io.Serializable;
+public class Person implements Serializable {
+
+ public Long id;
+
+ public String name;
+
+ public Person(java.lang.String name) {
+ this.name = name;
+ }
+
+ public Person() {
+ }
+
+ public java.lang.Long getId() {
+ return this.id;
+ }
+
+ public void setId(java.lang.Long id) {
+ this.id = id;
+ }
+
+ public java.lang.String getName() {
+ return this.name;
+ }
+
+ public void setName(java.lang.String name) {
+ if ((name != null) && (name.length() == 0)) {
+ throw new IllegalArgumentException("name can not be an empty String");
+ }
+ this.name = name;
+ }
+ }]]></programlisting>
+
+ <para>
+ In conclusion, this document is intended to introduce you to Hibernate plugin specific features related to tools both for the Eclipse and Ant tasks.
+ </para>
+
+ <para>
+ In <xref linkend="plugins"/> you've learned about a set of wizards for creating Mapping files, Configuration files, Console Configurations, become familiar with Mapping and Configuration files editors, tooling for organizing and controlling Reverse Engineering, Hibernate Console and Mapping diagrams.
+ </para>
+
+ <para>The rest chapters have explored the use of the <productname>Hibernate Tools</productname> via Ant tasks.</para>
+
+ <para>
+ Please visit <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss Tools Users Forum</ulink> to leave questions or/and suggestions on the topic. Your feedback is always appreciated.
+ </para>
+ </section>
+ </section>
+
+ </section>
+
+</chapter>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegenarchitecture.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegenarchitecture.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/codegenarchitecture.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="codegenarchitecture">
+ <title>Code generation architecture</title>
+
+ <para>
+ The code generation mechanism in <productname>Hibernate Tools</productname> consists of a few core concepts. This section explains their overall structure, which is the same for the <productname>Ant</productname> and <productname>Eclipse</productname> tools.
+ </para>
+
+ <section>
+ <title>Hibernate Meta Model</title>
+
+ <para>
+ The meta model is the model used by <productname>Hibernate Core</productname> to perform its object relational mapping. The model includes information about tables, columns, classes, properties, components, values, collections etc. The API is in the <code>org.hibernate.mapping</code> package and its main entry point is the <code>Configuration</code> class: the same class that is used to build a session factory.
+ </para>
+
+ <para>
+ The model represented by the <code>Configuration</code> class can be built in many ways:
+ </para>
+
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ A Core configuration uses <productname>Hibernate Core</productname> and supports reading <filename>hbm.xml</filename> files, and requires a <filename>hibernate.cfg.xml</filename> file. This is referred to as <emphasis>Core</emphasis> in Eclipse and <code><configuration></code> in Ant.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ An Annotation configuration uses <productname>Hibernate Annotations</productname>, supports <filename>hbm.xml</filename> files and annotated classes, and requires a <filename>hibernate.cfg.xml</filename> file. This is referred to as <emphasis>Annotations</emphasis> in Eclipse and <code><annotationconfiguration></code> in Ant.</para>
+ </listitem>
+
+ <listitem>
+ <para>
+ A JPA configuration uses a <productname>Hibernate EntityManager</productname> and supports <filename>hbm.xml</filename> files and annotated classes, and requires that the project has a <filename>META-INF/persistence.xml</filename> file in its classpath. This is referred to as <emphasis>JPA</emphasis> in Eclipse and <code><jpaconfiguration></code> in Ant.</para>
+ </listitem>
+
+ <listitem>
+ <para>
+ A JDBC configuration uses <property>Hibernate Tools</property> reverse engineering and reads its mappings via JDBC metadata + additional reverse engineering files (<filename>reveng.xml</filename>). Automatically used in Eclipse when doing reverse engineering from JDBC and referred to as <code><jdbcconfiguration></code> in Ant.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
+
+ <para>
+ In most projects you will normally use only one of the <emphasis>Core</emphasis>, <emphasis>Annotation</emphasis> or <emphasis>JPA</emphasis> configuration and possibly the JDBC configuration if you are using the reverse engineering facilities of <productname>Hibernate Tools</productname>.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>Hibernate Tools has support for all kinds of Hibernate Configurations.</para>
+ </note>
+
+ <para>The following drawing illustrates the core concepts:</para>
+
+ <para>
+ <figure>
+ <title>Hibernate Core Concepts</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/code_generation/code_generation_1.png" format="PNG"/>
+ </imageobject>
+
+ <imageobject role="html">
+
+ <imagedata align="center" fileref="images/code_generation/code_generation_1.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </para>
+
+ <para>
+ The code generation is performed based on the Configuration model no matter which type of configuration has been used to create the meta model, and thus the code generation is independent on the source of the meta model and represented via Exporters.
+ </para>
+ </section>
+
+ <section>
+ <title>Exporters</title>
+
+ <para>
+ Code generation is performed by an Exporters. An <emphasis>Exporter</emphasis> is handed a Hibernate Meta Model represented as a <code>Configuration</code> instance, and it is then the job of the exporter to generate a set of code artifacts.
+ </para>
+
+ <para>
+ The tool provides a default set of Exporter's which can be used in both Ant and the Eclipse UI. Documentation for these Exporters can be found in <xref linkend="ant"/> and <xref linkend="plugins"/>.
+ </para>
+
+ <para>
+ Users can provide their own custom Exporter's, either through custom classes implementing the <code>Exporter</code> interface or simply through custom templates. This is documented at in <xref linkend="hbmtemplate"/>.
+ </para>
+ </section>
+</chapter>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/database_jboss_tools.zip
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/database_jboss_tools.zip
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/database_jboss_tools_331.zip
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/database_jboss_tools_331.zip
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/code_generation/code_generation_1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/code_generation/code_generation_1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/favicon.ico
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/favicon.ico
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/icon.svg
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/icon.svg (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/icon.svg 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,3936 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:ns="http://ns.adobe.com/AdobeSVGViewerExtensions/3/"
+ xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://web.resource.org/cc/"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.0"
+ width="32"
+ height="32"
+ id="svg3017"
+ sodipodi:version="0.32"
+ inkscape:version="0.44+devel"
+ sodipodi:docname="book.svg"
+ sodipodi:docbase="/home/andy/Desktop">
+ <metadata
+ id="metadata489">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <sodipodi:namedview
+ inkscape:window-height="480"
+ inkscape:window-width="858"
+ inkscape:pageshadow="0"
+ inkscape:pageopacity="0.0"
+ guidetolerance="10.0"
+ gridtolerance="10.0"
+ objecttolerance="10.0"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:zoom="1"
+ inkscape:cx="16"
+ inkscape:cy="15.944056"
+ inkscape:window-x="0"
+ inkscape:window-y="33"
+ inkscape:current-layer="svg3017" />
+ <defs
+ id="defs3019">
+ <linearGradient
+ id="linearGradient2381">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="stop2383" />
+ <stop
+ style="stop-color:white;stop-opacity:0"
+ offset="1"
+ id="stop2385" />
+ </linearGradient>
+ <linearGradient
+ x1="415.73831"
+ y1="11.854"
+ x2="418.13361"
+ y2="18.8104"
+ id="XMLID_1758_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.8362,0.5206,-1.1904,0.992,147.62,-30.9374)">
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="0"
+ id="stop3903" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="1"
+ id="stop3905" />
+ <a:midPointStop
+ style="stop-color:#CCCCCC"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#CCCCCC"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#F2F2F2"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="500.70749"
+ y1="-13.2441"
+ x2="513.46442"
+ y2="-2.1547"
+ id="XMLID_1757_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0"
+ id="stop3890" />
+ <stop
+ style="stop-color:#96bad6;stop-opacity:1"
+ offset="1"
+ id="stop3892" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#96BAD6"
+ offset="1" />
+ </linearGradient>
+ <clipPath
+ id="XMLID_1755_">
+ <use
+ id="use3874"
+ x="0"
+ y="0"
+ width="744.09448"
+ height="600"
+ xlink:href="#XMLID_343_" />
+ </clipPath>
+ <linearGradient
+ x1="505.62939"
+ y1="-14.9526"
+ x2="527.49402"
+ y2="-0.7536"
+ id="XMLID_1756_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0"
+ id="stop3877" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0.51120001"
+ id="stop3879" />
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0.64609998"
+ id="stop3881" />
+ <stop
+ style="stop-color:#16336e;stop-opacity:1"
+ offset="1"
+ id="stop3883" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5112" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.6461" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#16336E"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="471.0806"
+ y1="201.07761"
+ x2="481.91711"
+ y2="210.4977"
+ id="XMLID_1754_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#6498c1;stop-opacity:1"
+ offset="0.005618"
+ id="stop3863" />
+ <stop
+ style="stop-color:#79a9cc;stop-opacity:1"
+ offset="0.2332"
+ id="stop3865" />
+ <stop
+ style="stop-color:#a4cde2;stop-opacity:1"
+ offset="0.74049997"
+ id="stop3867" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="1"
+ id="stop3869" />
+ <a:midPointStop
+ style="stop-color:#6498C1"
+ offset="5.618000e-003" />
+ <a:midPointStop
+ style="stop-color:#6498C1"
+ offset="0.4438" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="516.57672"
+ y1="-15.769"
+ x2="516.57672"
+ y2="0.84280002"
+ id="XMLID_1753_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0"
+ id="stop3851" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="1"
+ id="stop3853" />
+ <a:midPointStop
+ style="stop-color:#B2B2B2"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#B2B2B2"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#F2F2F2"
+ offset="1" />
+ </linearGradient>
+ <clipPath
+ id="XMLID_1751_">
+ <use
+ id="use3837"
+ x="0"
+ y="0"
+ width="744.09448"
+ height="600"
+ xlink:href="#XMLID_338_" />
+ </clipPath>
+ <linearGradient
+ x1="506.09909"
+ y1="-11.5137"
+ x2="527.99609"
+ y2="2.7063999"
+ id="XMLID_1752_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0"
+ id="stop3840" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0.51120001"
+ id="stop3842" />
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0.64609998"
+ id="stop3844" />
+ <stop
+ style="stop-color:#16336e;stop-opacity:1"
+ offset="1"
+ id="stop3846" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5112" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.6461" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#16336E"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="468.2915"
+ y1="204.7612"
+ x2="479.39871"
+ y2="214.4166"
+ id="XMLID_1750_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0"
+ id="stop3830" />
+ <stop
+ style="stop-color:#96bad6;stop-opacity:1"
+ offset="1"
+ id="stop3832" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#96BAD6"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="502.70749"
+ y1="115.3013"
+ x2="516.39001"
+ y2="127.1953"
+ id="XMLID_1749_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9703,0.2419,-0.2419,0.9703,11.0227,-35.6159)">
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0"
+ id="stop3818" />
+ <stop
+ style="stop-color:#96bad6;stop-opacity:1"
+ offset="1"
+ id="stop3820" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#96BAD6"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="501.0903"
+ y1="-19.2544"
+ x2="531.85413"
+ y2="0.72390002"
+ id="XMLID_1748_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0"
+ id="stop3803" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0.51120001"
+ id="stop3805" />
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0.64609998"
+ id="stop3807" />
+ <stop
+ style="stop-color:#16336e;stop-opacity:1"
+ offset="1"
+ id="stop3809" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5112" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.6461" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#16336E"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="481.23969"
+ y1="212.5742"
+ x2="472.92981"
+ y2="207.4967"
+ id="XMLID_2275_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#f3403f;stop-opacity:1"
+ offset="0"
+ id="stop9947" />
+ <stop
+ style="stop-color:#d02a28;stop-opacity:1"
+ offset="0.37889999"
+ id="stop9949" />
+ <stop
+ style="stop-color:#b21714;stop-opacity:1"
+ offset="0.77649999"
+ id="stop9951" />
+ <stop
+ style="stop-color:#a6100c;stop-opacity:1"
+ offset="1"
+ id="stop9953" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0.4213" />
+ <a:midPointStop
+ style="stop-color:#A6100C"
+ offset="1" />
+ </linearGradient>
+ <clipPath
+ id="XMLID_2273_">
+ <use
+ id="use9933"
+ x="0"
+ y="0"
+ width="744.09448"
+ height="600"
+ xlink:href="#XMLID_960_" />
+ </clipPath>
+ <linearGradient
+ x1="473.7681"
+ y1="209.17529"
+ x2="486.98099"
+ y2="213.2001"
+ id="XMLID_2274_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#f3403f;stop-opacity:1"
+ offset="0"
+ id="stop9936" />
+ <stop
+ style="stop-color:#d02a28;stop-opacity:1"
+ offset="0.37889999"
+ id="stop9938" />
+ <stop
+ style="stop-color:#b21714;stop-opacity:1"
+ offset="0.77649999"
+ id="stop9940" />
+ <stop
+ style="stop-color:#a6100c;stop-opacity:1"
+ offset="1"
+ id="stop9942" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0.4213" />
+ <a:midPointStop
+ style="stop-color:#A6100C"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="478.21341"
+ y1="-131.9297"
+ x2="469.85818"
+ y2="-140.28481"
+ id="XMLID_2272_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5592,0.829,-0.829,0.5592,101.3357,-104.791)">
+ <stop
+ style="stop-color:#f3403f;stop-opacity:1"
+ offset="0"
+ id="stop9917" />
+ <stop
+ style="stop-color:#d02a28;stop-opacity:1"
+ offset="0.37889999"
+ id="stop9919" />
+ <stop
+ style="stop-color:#b21714;stop-opacity:1"
+ offset="0.77649999"
+ id="stop9921" />
+ <stop
+ style="stop-color:#a6100c;stop-opacity:1"
+ offset="1"
+ id="stop9923" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0.4213" />
+ <a:midPointStop
+ style="stop-color:#A6100C"
+ offset="1" />
+ </linearGradient>
+ <marker
+ refX="0"
+ refY="0"
+ orient="auto"
+ style="overflow:visible"
+ id="TriangleInM">
+ <path
+ d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z "
+ transform="scale(-0.4,-0.4)"
+ style="fill:#5c5c4f"
+ id="path3197" />
+ </marker>
+ <linearGradient
+ x1="200.7363"
+ y1="100.4028"
+ x2="211.99519"
+ y2="89.143997"
+ id="XMLID_3298_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#bfbfbf;stop-opacity:1"
+ offset="0"
+ id="stop20103" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="1"
+ id="stop20105" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#BFBFBF" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#BFBFBF" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#F2F2F2" />
+ </linearGradient>
+ <linearGradient
+ x1="200.7363"
+ y1="100.4028"
+ x2="211.99519"
+ y2="89.143997"
+ id="linearGradient36592"
+ xlink:href="#XMLID_3298_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.029078,0,0,1,-183.2624,-79.44655)" />
+ <linearGradient
+ x1="181.2925"
+ y1="110.8481"
+ x2="192.6369"
+ y2="99.5037"
+ id="XMLID_3297_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0"
+ id="stop20096" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="stop20098" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#CCCCCC" />
+ </linearGradient>
+ <linearGradient
+ x1="181.2925"
+ y1="110.8481"
+ x2="192.6369"
+ y2="99.5037"
+ id="linearGradient36595"
+ xlink:href="#XMLID_3297_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.029078,0,0,1,-183.2624,-79.44655)" />
+ <linearGradient
+ x1="211.77589"
+ y1="105.7749"
+ x2="212.6619"
+ y2="108.2092"
+ id="XMLID_3296_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#0f6124;stop-opacity:1"
+ offset="0"
+ id="stop20087" />
+ <stop
+ style="stop-color:#219630;stop-opacity:1"
+ offset="1"
+ id="stop20089" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#0F6124" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#0F6124" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#219630" />
+ </linearGradient>
+ <linearGradient
+ x1="211.77589"
+ y1="105.7749"
+ x2="212.6619"
+ y2="108.2092"
+ id="linearGradient36677"
+ xlink:href="#XMLID_3296_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.029078,0,0,1,-183.2624,-79.44655)" />
+ <linearGradient
+ x1="208.9834"
+ y1="116.8296"
+ x2="200.0811"
+ y2="96.834602"
+ id="XMLID_3295_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0"
+ id="stop20076" />
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0.5"
+ id="stop20078" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="1"
+ id="stop20080" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#FFFFFF" />
+ </linearGradient>
+ <linearGradient
+ x1="208.9834"
+ y1="116.8296"
+ x2="200.0811"
+ y2="96.834602"
+ id="linearGradient36604"
+ xlink:href="#XMLID_3295_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.029078,0,0,1,-183.2624,-79.44655)" />
+ <linearGradient
+ x1="195.5264"
+ y1="97.911102"
+ x2="213.5213"
+ y2="115.9061"
+ id="XMLID_3294_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="0"
+ id="stop20069" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="1"
+ id="stop20071" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#CCCCCC" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#CCCCCC" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#FFFFFF" />
+ </linearGradient>
+ <linearGradient
+ x1="195.5264"
+ y1="97.911102"
+ x2="213.5213"
+ y2="115.9061"
+ id="linearGradient36607"
+ xlink:href="#XMLID_3294_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.029078,0,0,1,-183.2624,-79.44655)" />
+ <linearGradient
+ x1="186.1938"
+ y1="109.1343"
+ x2="206.6881"
+ y2="88.639999"
+ id="XMLID_3293_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0"
+ id="stop20056" />
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0.16850001"
+ id="stop20058" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0.23029999"
+ id="stop20060" />
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0.2809"
+ id="stop20062" />
+ <stop
+ style="stop-color:#c2c2c2;stop-opacity:1"
+ offset="0.5"
+ id="stop20064" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="0.1685"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.2303"
+ style="stop-color:#FFFFFF" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#FFFFFF" />
+ <a:midPointStop
+ offset="0.2809"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#C2C2C2" />
+ </linearGradient>
+ <linearGradient
+ x1="186.1938"
+ y1="109.1343"
+ x2="206.6881"
+ y2="88.639999"
+ id="linearGradient36610"
+ xlink:href="#XMLID_3293_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.029078,0,0,1,-183.2624,-79.44655)" />
+ <linearGradient
+ x1="184.8569"
+ y1="112.2676"
+ x2="211.94099"
+ y2="89.541397"
+ id="XMLID_3292_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0"
+ id="stop20043" />
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0.16850001"
+ id="stop20045" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0.23029999"
+ id="stop20047" />
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0.2809"
+ id="stop20049" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="stop20051" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="0.1685"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.2303"
+ style="stop-color:#FFFFFF" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#FFFFFF" />
+ <a:midPointStop
+ offset="0.2809"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#CCCCCC" />
+ </linearGradient>
+ <linearGradient
+ x1="184.8569"
+ y1="112.2676"
+ x2="211.94099"
+ y2="89.541397"
+ id="linearGradient36613"
+ xlink:href="#XMLID_3292_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.029078,0,0,1,-183.2624,-79.44655)" />
+ <marker
+ refX="0"
+ refY="0"
+ orient="auto"
+ style="overflow:visible"
+ id="TriangleOutM">
+ <path
+ d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z "
+ transform="scale(0.4,0.4)"
+ style="fill:#5c5c4f;fill-rule:evenodd;stroke-width:1pt;marker-start:none"
+ id="path3238" />
+ </marker>
+ <linearGradient
+ x1="165.3"
+ y1="99.5"
+ x2="165.3"
+ y2="115.9"
+ id="XMLID_3457_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#999;stop-opacity:1"
+ offset="0"
+ id="stop8309" />
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0.30000001"
+ id="stop8311" />
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="1"
+ id="stop8313" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#999999" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#999999" />
+ <a:midPointstop
+ offset="0.3"
+ style="stop-color:#B2B2B2" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#B2B2B2" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#B2B2B2" />
+ </linearGradient>
+ <linearGradient
+ x1="165.3"
+ y1="99.5"
+ x2="165.3"
+ y2="115.9"
+ id="lg1997"
+ xlink:href="#XMLID_3457_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <linearGradient
+ x1="175"
+ y1="99.800003"
+ x2="175"
+ y2="112.5"
+ id="XMLID_3456_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#737373;stop-opacity:1"
+ offset="0"
+ id="stop8300" />
+ <stop
+ style="stop-color:#191919;stop-opacity:1"
+ offset="0.60000002"
+ id="stop8302" />
+ <stop
+ style="stop-color:#191919;stop-opacity:1"
+ offset="1"
+ id="stop8304" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#737373" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#737373" />
+ <a:midPointstop
+ offset="0.6"
+ style="stop-color:#191919" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#191919" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#191919" />
+ </linearGradient>
+ <linearGradient
+ x1="175"
+ y1="99.800003"
+ x2="175"
+ y2="112.5"
+ id="lg2000"
+ xlink:href="#XMLID_3456_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <linearGradient
+ x1="168.8"
+ y1="107.1"
+ x2="164.5"
+ y2="110"
+ id="XMLID_3455_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#666;stop-opacity:1"
+ offset="0"
+ id="stop8291" />
+ <stop
+ style="stop-color:#191919;stop-opacity:1"
+ offset="0.69999999"
+ id="stop8293" />
+ <stop
+ style="stop-color:#191919;stop-opacity:1"
+ offset="1"
+ id="stop8295" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#666666" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#666666" />
+ <a:midPointstop
+ offset="0.7"
+ style="stop-color:#191919" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#191919" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#191919" />
+ </linearGradient>
+ <linearGradient
+ x1="168.8"
+ y1="107.1"
+ x2="164.5"
+ y2="110"
+ id="lg2003"
+ xlink:href="#XMLID_3455_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <linearGradient
+ id="lg63694">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="stop63696" />
+ <stop
+ style="stop-color:white;stop-opacity:0"
+ offset="1"
+ id="stop63698" />
+ </linearGradient>
+ <linearGradient
+ x1="458"
+ y1="483"
+ x2="465.20001"
+ y2="271.39999"
+ id="lg2006"
+ xlink:href="#lg63694"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(6.3e-2,0,0,6.3e-2,-1.3,-9.8)" />
+ <linearGradient
+ x1="176.3"
+ y1="110.1"
+ x2="158.7"
+ y2="105"
+ id="XMLID_3453_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#666;stop-opacity:1"
+ offset="0"
+ id="stop8271" />
+ <stop
+ style="stop-color:#737373;stop-opacity:1"
+ offset="0.2"
+ id="stop8273" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="1"
+ id="stop8275" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#666666" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#666666" />
+ <a:midPointstop
+ offset="0.2"
+ style="stop-color:#737373" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#737373" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#FFFFFF" />
+ </linearGradient>
+ <linearGradient
+ x1="176.3"
+ y1="110.1"
+ x2="158.7"
+ y2="105"
+ id="lg2009"
+ xlink:href="#XMLID_3453_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <linearGradient
+ x1="173.60001"
+ y1="118.9"
+ x2="172.8"
+ y2="128.2"
+ id="XMLID_3449_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#ecb300;stop-opacity:1"
+ offset="0"
+ id="stop8232" />
+ <stop
+ style="stop-color:#fff95e;stop-opacity:1"
+ offset="0.60000002"
+ id="stop8234" />
+ <stop
+ style="stop-color:#ecd600;stop-opacity:1"
+ offset="1"
+ id="stop8236" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.6"
+ style="stop-color:#FFF95E" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFF95E" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#ECD600" />
+ </linearGradient>
+ <linearGradient
+ x1="173.60001"
+ y1="118.9"
+ x2="172.8"
+ y2="128.2"
+ id="lg2016"
+ xlink:href="#XMLID_3449_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <radialGradient
+ cx="284.60001"
+ cy="172.60001"
+ r="6.5"
+ fx="284.60001"
+ fy="172.60001"
+ id="XMLID_3448_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.4,0,0,1.4,-237.3,-126.8)">
+ <stop
+ style="stop-color:#ecb300;stop-opacity:1"
+ offset="0"
+ id="stop8219" />
+ <stop
+ style="stop-color:#ecb300;stop-opacity:1"
+ offset="0.30000001"
+ id="stop8221" />
+ <stop
+ style="stop-color:#c96b00;stop-opacity:1"
+ offset="0.89999998"
+ id="stop8223" />
+ <stop
+ style="stop-color:#9a5500;stop-opacity:1"
+ offset="1"
+ id="stop8225" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.3"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.9"
+ style="stop-color:#C96B00" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#C96B00" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#9A5500" />
+ </radialGradient>
+ <radialGradient
+ cx="284.60001"
+ cy="172.60001"
+ r="6.5"
+ fx="284.60001"
+ fy="172.60001"
+ id="rg2020"
+ xlink:href="#XMLID_3448_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.513992,0,0,2.347576,-689.1621,-378.5717)" />
+ <linearGradient
+ x1="158.10001"
+ y1="123"
+ x2="164.2"
+ y2="126.6"
+ id="XMLID_3447_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#ecd600;stop-opacity:1"
+ offset="0"
+ id="stop8204" />
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="0.30000001"
+ id="stop8206" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="1"
+ id="stop8208" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#ECD600" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#ECD600" />
+ <a:midPointstop
+ offset="0.3"
+ style="stop-color:#FFFFB3" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFFFB3" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#FFFFFF" />
+ </linearGradient>
+ <linearGradient
+ x1="158.10001"
+ y1="123"
+ x2="164.2"
+ y2="126.6"
+ id="lg2026"
+ xlink:href="#XMLID_3447_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <radialGradient
+ cx="280.89999"
+ cy="163.7"
+ r="10.1"
+ fx="280.89999"
+ fy="163.7"
+ id="XMLID_3446_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.4,0,0,1.4,-237.3,-126.8)">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="stop8197" />
+ <stop
+ style="stop-color:#fff95e;stop-opacity:1"
+ offset="1"
+ id="stop8199" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#FFFFFF" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFFFFF" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#FFF95E" />
+ </radialGradient>
+ <radialGradient
+ cx="280.89999"
+ cy="163.7"
+ r="10.1"
+ fx="280.89999"
+ fy="163.7"
+ id="rg2029"
+ xlink:href="#XMLID_3446_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7,0,0,1.7,-457.5,-266.8)" />
+ <linearGradient
+ x1="156.5"
+ y1="122.7"
+ x2="180.10001"
+ y2="122.7"
+ id="XMLID_3445_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#ecb300;stop-opacity:1"
+ offset="0"
+ id="stop8184" />
+ <stop
+ style="stop-color:#ffe900;stop-opacity:1"
+ offset="0.2"
+ id="stop8186" />
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="0.30000001"
+ id="stop8188" />
+ <stop
+ style="stop-color:#ffe900;stop-opacity:1"
+ offset="0.40000001"
+ id="stop8190" />
+ <stop
+ style="stop-color:#d68100;stop-opacity:1"
+ offset="1"
+ id="stop8192" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.2"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="0.3"
+ style="stop-color:#FFFFB3" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFFFB3" />
+ <a:midPointstop
+ offset="0.4"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#D68100" />
+ </linearGradient>
+ <linearGradient
+ x1="156.5"
+ y1="122.7"
+ x2="180.10001"
+ y2="122.7"
+ id="lg2032"
+ xlink:href="#XMLID_3445_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <linearGradient
+ x1="156.39999"
+ y1="115.4"
+ x2="180.10001"
+ y2="115.4"
+ id="XMLID_3444_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#ecb300;stop-opacity:1"
+ offset="0"
+ id="stop8171" />
+ <stop
+ style="stop-color:#ffe900;stop-opacity:1"
+ offset="0.2"
+ id="stop8173" />
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="0.30000001"
+ id="stop8175" />
+ <stop
+ style="stop-color:#ffe900;stop-opacity:1"
+ offset="0.40000001"
+ id="stop8177" />
+ <stop
+ style="stop-color:#d68100;stop-opacity:1"
+ offset="1"
+ id="stop8179" />
+ <a:midPointstop
+ offset="0"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#ECB300" />
+ <a:midPointstop
+ offset="0.2"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="0.3"
+ style="stop-color:#FFFFB3" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFFFB3" />
+ <a:midPointstop
+ offset="0.4"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="0.5"
+ style="stop-color:#FFE900" />
+ <a:midPointstop
+ offset="1"
+ style="stop-color:#D68100" />
+ </linearGradient>
+ <linearGradient
+ x1="156.39999"
+ y1="115.4"
+ x2="180.10001"
+ y2="115.4"
+ id="lg2035"
+ xlink:href="#XMLID_3444_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2,0,0,1.2,-175.9,-114.6)" />
+ <linearGradient
+ x1="379.70001"
+ y1="167.89999"
+ x2="383.89999"
+ y2="172.89999"
+ id="lg4286_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.8,0.2,-0.2,0.8,78.8,38.1)">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="s16159" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0.1"
+ id="s16161" />
+ <stop
+ style="stop-color:#737373;stop-opacity:1"
+ offset="1"
+ id="s16163" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.1" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#737373"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="379.60001"
+ y1="167.8"
+ x2="383.79999"
+ y2="172"
+ id="lg6416"
+ xlink:href="#lg4286_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.622156,0.623859,-0.623859,2.62182,-882.9706,-673.7921)" />
+ <linearGradient
+ x1="384.20001"
+ y1="169.8"
+ x2="384.79999"
+ y2="170.39999"
+ id="lg4285_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.8,0.2,-0.2,0.8,78.8,38.1)">
+ <stop
+ style="stop-color:#737373;stop-opacity:1"
+ offset="0"
+ id="s16152" />
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="1"
+ id="s16154" />
+ <ns:midPointStop
+ style="stop-color:#737373"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#737373"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#D9D9D9"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="384.20001"
+ y1="169.8"
+ x2="384.79999"
+ y2="170.39999"
+ id="lg6453"
+ xlink:href="#lg4285_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.6,0.6,-0.6,2.6,-883,-673.8)" />
+ <linearGradient
+ x1="380.5"
+ y1="172.60001"
+ x2="382.79999"
+ y2="173.7"
+ id="lg4284_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.8,0.2,-0.2,0.8,78.8,38.1)">
+ <stop
+ style="stop-color:gray;stop-opacity:1"
+ offset="0"
+ id="s16145" />
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="1"
+ id="s16147" />
+ <ns:midPointStop
+ style="stop-color:#808080"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#808080"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#E5E5E5"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="380.5"
+ y1="172.60001"
+ x2="382.79999"
+ y2="173.7"
+ id="lg6456"
+ xlink:href="#lg4284_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.6,0.6,-0.6,2.6,-883,-673.8)" />
+ <radialGradient
+ cx="347.29999"
+ cy="244.5"
+ r="5.1999998"
+ fx="347.29999"
+ fy="244.5"
+ id="lg4282_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.4,0,0,3.4,-1148,-802)">
+ <stop
+ style="stop-color:#333;stop-opacity:1"
+ offset="0"
+ id="s16135" />
+ <stop
+ style="stop-color:#999;stop-opacity:1"
+ offset="1"
+ id="s16137" />
+ <ns:midPointStop
+ style="stop-color:#333333"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#333333"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#999999"
+ offset="1" />
+ </radialGradient>
+ <linearGradient
+ x1="310.39999"
+ y1="397.70001"
+ x2="310.89999"
+ y2="399.5"
+ id="lg4280_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.7,-0.7,0.7,0.7,-153.4,180.6)">
+ <stop
+ style="stop-color:#ffcd00;stop-opacity:1"
+ offset="0"
+ id="s16111" />
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="0.60000002"
+ id="s16113" />
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="1"
+ id="s16115" />
+ <ns:midPointStop
+ style="stop-color:#FFCD00"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#FFCD00"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0.6" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="310.39999"
+ y1="397.70001"
+ x2="310.89999"
+ y2="399.5"
+ id="lg6467"
+ xlink:href="#lg4280_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.4,-2.4,2.4,2.4,-1663.6,-195)" />
+ <linearGradient
+ x1="310.89999"
+ y1="395.79999"
+ x2="313.29999"
+ y2="403.10001"
+ id="lg4279_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.7,-0.7,0.7,0.7,-153.4,180.6)">
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="0"
+ id="s16100" />
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="0.40000001"
+ id="s16102" />
+ <stop
+ style="stop-color:#ffcd00;stop-opacity:1"
+ offset="0.89999998"
+ id="s16104" />
+ <stop
+ style="stop-color:#ffcd00;stop-opacity:1"
+ offset="1"
+ id="s16106" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0.4" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFCD00"
+ offset="0.9" />
+ <ns:midPointStop
+ style="stop-color:#FFCD00"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFCD00"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="310.89999"
+ y1="395.79999"
+ x2="313.29999"
+ y2="403.10001"
+ id="lg6465"
+ xlink:href="#lg4279_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.4,-2.4,2.4,2.4,-1663.6,-195)" />
+ <linearGradient
+ x1="307.79999"
+ y1="395.20001"
+ x2="313.79999"
+ y2="413.60001"
+ id="lg4278_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.7,-0.7,0.7,0.7,-153.4,180.6)">
+ <stop
+ style="stop-color:#ffffb3;stop-opacity:1"
+ offset="0"
+ id="s16091" />
+ <stop
+ style="stop-color:#fcd72f;stop-opacity:1"
+ offset="0.40000001"
+ id="s16093" />
+ <stop
+ style="stop-color:#ffcd00;stop-opacity:1"
+ offset="1"
+ id="s16095" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#FFFFB3"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FCD72F"
+ offset="0.4" />
+ <ns:midPointStop
+ style="stop-color:#FCD72F"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFCD00"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="306.5"
+ y1="393"
+ x2="309"
+ y2="404"
+ id="lg6400"
+ xlink:href="#lg4278_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.4,-2.4,2.4,2.4,-1663.6,-195)" />
+ <linearGradient
+ x1="352.10001"
+ y1="253.60001"
+ x2="348.5"
+ y2="237.8"
+ id="lg4276_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.4,0,0,3.4,-1148,-802)">
+ <stop
+ style="stop-color:#ffff87;stop-opacity:1"
+ offset="0"
+ id="s16077" />
+ <stop
+ style="stop-color:#ffad00;stop-opacity:1"
+ offset="1"
+ id="s16079" />
+ <ns:midPointStop
+ style="stop-color:#FFFF87"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#FFFF87"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFAD00"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="335.60001"
+ y1="354.79999"
+ x2="337.89999"
+ y2="354.79999"
+ id="lg4275_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9,-0.5,0.5,0.9,-121.7,105.1)">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="s16057" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0.80000001"
+ id="s16059" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="1"
+ id="s16061" />
+ <ns:midPointStop
+ style="stop-color:#D9D9D9"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#D9D9D9"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.8" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="335.60001"
+ y1="354.79999"
+ x2="337.89999"
+ y2="354.79999"
+ id="lg6463"
+ xlink:href="#lg4275_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.9,-1.7,1.7,2.9,-1557,-448.7)" />
+ <linearGradient
+ x1="337.39999"
+ y1="353.10001"
+ x2="339.39999"
+ y2="357.10001"
+ id="lg4274_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9,-0.5,0.5,0.9,-121.7,105.1)">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="s16048" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0.1"
+ id="s16050" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="s16052" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.1" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#CCCCCC"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="337.39999"
+ y1="353.10001"
+ x2="339.39999"
+ y2="357.10001"
+ id="lg6461"
+ xlink:href="#lg4274_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.9,-1.7,1.7,2.9,-1557,-448.7)" />
+ <linearGradient
+ x1="334.39999"
+ y1="355.5"
+ x2="335.5"
+ y2="356.79999"
+ id="lg4273_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9,-0.5,0.5,0.9,-121.7,105.1)">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="s16041" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="s16043" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="5.6e-003" />
+ <ns:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#CCCCCC"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="334.39999"
+ y1="355.5"
+ x2="335.5"
+ y2="356.79999"
+ id="lg6381"
+ xlink:href="#lg4273_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.9,-1.7,1.7,2.9,-1557,-448.7)" />
+ <linearGradient
+ x1="348.39999"
+ y1="247.39999"
+ x2="354.10001"
+ y2="242"
+ id="lg4271_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.4,0,0,3.4,-1148,-802)">
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="0"
+ id="s16025" />
+ <stop
+ style="stop-color:#9e9e9e;stop-opacity:1"
+ offset="0.40000001"
+ id="s16027" />
+ <stop
+ style="stop-color:black;stop-opacity:1"
+ offset="1"
+ id="s16029" />
+ <ns:midPointStop
+ style="stop-color:#F2F2F2"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#F2F2F2"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#000000"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="351.29999"
+ y1="257.29999"
+ x2="346.29999"
+ y2="235.5"
+ id="lg4270_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#ffff87;stop-opacity:1"
+ offset="0"
+ id="s16007" />
+ <stop
+ style="stop-color:#ffad00;stop-opacity:1"
+ offset="1"
+ id="s16009" />
+ <ns:midPointStop
+ style="stop-color:#FFFF87"
+ offset="0" />
+ <ns:midPointStop
+ style="stop-color:#FFFF87"
+ offset="0.5" />
+ <ns:midPointStop
+ style="stop-color:#FFAD00"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="351.29999"
+ y1="257.29999"
+ x2="346.29999"
+ y2="235.5"
+ id="lg6459"
+ xlink:href="#lg4270_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.4,0,0,3.4,-1148,-802)" />
+ <linearGradient
+ x1="43.799999"
+ y1="32.5"
+ x2="63.299999"
+ y2="66.400002"
+ id="XMLID_2708_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="stop75318" />
+ <stop
+ style="stop-color:#fffcea;stop-opacity:1"
+ offset="1"
+ id="stop75320" />
+ <a:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#FFFCEA"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="43.799999"
+ y1="32.5"
+ x2="63.299999"
+ y2="66.400002"
+ id="lg1907"
+ xlink:href="#XMLID_2708_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-29,-22.6)" />
+ <linearGradient
+ x1="52.5"
+ y1="40.400002"
+ x2="58.200001"
+ y2="64"
+ id="XMLID_2707_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#ffdea0;stop-opacity:1"
+ offset="0"
+ id="stop75305" />
+ <stop
+ style="stop-color:#ffd89e;stop-opacity:1"
+ offset="0.30000001"
+ id="stop75307" />
+ <stop
+ style="stop-color:#ffd79e;stop-opacity:1"
+ offset="0.30000001"
+ id="stop75309" />
+ <stop
+ style="stop-color:#dbaf6d;stop-opacity:1"
+ offset="0.69999999"
+ id="stop75311" />
+ <stop
+ style="stop-color:#6f4c24;stop-opacity:1"
+ offset="1"
+ id="stop75313" />
+ <a:midPointStop
+ style="stop-color:#FFDEA0"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#FFDEA0"
+ offset="0.6" />
+ <a:midPointStop
+ style="stop-color:#FFD79E"
+ offset="0.3" />
+ <a:midPointStop
+ style="stop-color:#FFD79E"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#DBAF6D"
+ offset="0.7" />
+ <a:midPointStop
+ style="stop-color:#DBAF6D"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#6F4C24"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="52.5"
+ y1="40.400002"
+ x2="58.200001"
+ y2="64"
+ id="lg1910"
+ xlink:href="#XMLID_2707_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-29,-22.6)" />
+ <linearGradient
+ x1="58"
+ y1="73.199997"
+ x2="44.5"
+ y2="19"
+ id="XMLID_2704_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-29,-22.6)">
+ <stop
+ style="stop-color:#d4a96c;stop-opacity:1"
+ offset="0.5"
+ id="stop75284" />
+ <stop
+ style="stop-color:#dcb273;stop-opacity:1"
+ offset="0.60000002"
+ id="stop75286" />
+ <stop
+ style="stop-color:#f0ca87;stop-opacity:1"
+ offset="0.80000001"
+ id="stop75288" />
+ <stop
+ style="stop-color:#ffdc96;stop-opacity:1"
+ offset="0.69999999"
+ id="stop75290" />
+ <stop
+ style="stop-color:#c18a42;stop-opacity:1"
+ offset="1"
+ id="stop75292" />
+ <a:midPointStop
+ style="stop-color:#D4A96C"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#D4A96C"
+ offset="0.6" />
+ <a:midPointStop
+ style="stop-color:#FFDC96"
+ offset="0.7" />
+ <a:midPointStop
+ style="stop-color:#FFDC96"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#C18A42"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="53.700001"
+ y1="32"
+ x2="53.700001"
+ y2="64.599998"
+ id="XMLID_2703_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#e5c9b0;stop-opacity:1"
+ offset="0"
+ id="stop75268" />
+ <stop
+ style="stop-color:#e5c9b0;stop-opacity:1"
+ offset="0.40000001"
+ id="stop75270" />
+ <stop
+ style="stop-color:#c0aa94;stop-opacity:1"
+ offset="1"
+ id="stop75272" />
+ <a:midPointStop
+ style="stop-color:#E5C9B0"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#E5C9B0"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#E5C9B0"
+ offset="0.4" />
+ <a:midPointStop
+ style="stop-color:#E5C9B0"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#C0AA94"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="53.700001"
+ y1="32"
+ x2="53.700001"
+ y2="64.599998"
+ id="lg1916"
+ xlink:href="#XMLID_2703_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-29,-22.6)" />
+ <linearGradient
+ x1="224.31"
+ y1="19.450001"
+ x2="214.33"
+ y2="11.46"
+ id="XMLID_419_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#404040;stop-opacity:1"
+ offset="0"
+ id="s1903" />
+ <stop
+ style="stop-color:#6d6d6d;stop-opacity:1"
+ offset="0.33000001"
+ id="s1905" />
+ <stop
+ style="stop-color:#e9e9e9;stop-opacity:1"
+ offset="1"
+ id="s1907" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#404040" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#404040" />
+ <a:midPointStop
+ offset="0.33"
+ style="stop-color:#6D6D6D" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#6D6D6D" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#E9E9E9" />
+ </linearGradient>
+ <linearGradient
+ x1="221.84"
+ y1="32.779999"
+ x2="212.2"
+ y2="20.27"
+ id="lg1988"
+ xlink:href="#XMLID_419_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.33,0,0,1.31,-274.2,-5.2)" />
+ <linearGradient
+ x1="228.35001"
+ y1="33.279999"
+ x2="215.42999"
+ y2="33.279999"
+ id="lg1900"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="s1902" />
+ <stop
+ style="stop-color:white;stop-opacity:0"
+ offset="1"
+ id="s1906" />
+ <a:midPointStop
+ style="stop-color:#575757"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#575757"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#6D6D6D"
+ offset="0.33" />
+ <a:midPointStop
+ style="stop-color:#6D6D6D"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#D3D3D3"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="234.81"
+ y1="33.279999"
+ x2="228.27"
+ y2="33.279999"
+ id="lg1908"
+ xlink:href="#lg1900"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.33,0,0,1.31,-274.2,-5.2)" />
+ <linearGradient
+ x1="228.35001"
+ y1="33.279999"
+ x2="215.42999"
+ y2="33.279999"
+ id="XMLID_416_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#575757;stop-opacity:1"
+ offset="0"
+ id="s1874" />
+ <stop
+ style="stop-color:#6d6d6d;stop-opacity:1"
+ offset="0.33000001"
+ id="s1876" />
+ <stop
+ style="stop-color:#d3d3d3;stop-opacity:1"
+ offset="1"
+ id="s1878" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#575757" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#575757" />
+ <a:midPointStop
+ offset="0.33"
+ style="stop-color:#6D6D6D" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#6D6D6D" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#D3D3D3" />
+ </linearGradient>
+ <linearGradient
+ x1="228.35001"
+ y1="33.279999"
+ x2="215.42999"
+ y2="33.279999"
+ id="lg1991"
+ xlink:href="#XMLID_416_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.33,0,0,1.31,-274.2,-5.2)" />
+ <radialGradient
+ cx="603.19"
+ cy="230.77"
+ r="1.67"
+ fx="603.19"
+ fy="230.77"
+ id="x5010_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1,0,0,1.1,-54.33,-75.4)">
+ <stop
+ style="stop-color:#c9ffc9;stop-opacity:1"
+ offset="0"
+ id="stop29201" />
+ <stop
+ style="stop-color:#23a11f;stop-opacity:1"
+ offset="1"
+ id="stop29203" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#C9FFC9" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#C9FFC9" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#23A11F" />
+ </radialGradient>
+ <radialGradient
+ cx="603.19"
+ cy="230.77"
+ r="1.67"
+ fx="603.19"
+ fy="230.77"
+ id="radialGradient5711"
+ xlink:href="#x5010_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.23,0,0,1.23,-709.93,-245.02)" />
+ <linearGradient
+ x1="592.31"
+ y1="162.60001"
+ x2="609.32001"
+ y2="145.59"
+ id="lg5722"
+ xlink:href="#x5003_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12,0,0,1.12,-649.08,-160.62)" />
+ <linearGradient
+ x1="601.48999"
+ y1="170.16"
+ x2="613.84003"
+ y2="170.16"
+ id="x5002_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="stop29134" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0.2"
+ id="stop29136" />
+ <stop
+ style="stop-color:#999;stop-opacity:1"
+ offset="1"
+ id="stop29138" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.20"
+ style="stop-color:#FFFFFF" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#FFFFFF" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#999999" />
+ </linearGradient>
+ <linearGradient
+ x1="601.48999"
+ y1="170.16"
+ x2="613.84003"
+ y2="170.16"
+ id="lg5725"
+ xlink:href="#x5002_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12,0,0,1.12,-649.08,-160.62)" />
+ <linearGradient
+ x1="592.20001"
+ y1="156.45"
+ x2="609.98999"
+ y2="174.23"
+ id="x5004_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12,0,0,1.12,-649.08,-160.62)">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="stop29157" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="1"
+ id="stop29159" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#FFFFFF" />
+ </linearGradient>
+ <linearGradient
+ x1="592.20001"
+ y1="156.45"
+ x2="609.98999"
+ y2="174.23"
+ id="lg5728"
+ xlink:href="#x5004_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12,0,0,1.12,-649.08,-160.62)" />
+ <linearGradient
+ x1="592.31"
+ y1="162.60001"
+ x2="609.32001"
+ y2="145.59"
+ id="x5003_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="0"
+ id="stop29143" />
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="1"
+ id="stop29145" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#F2F2F2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#F2F2F2" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#E5E5E5" />
+ </linearGradient>
+ <linearGradient
+ x1="592.31"
+ y1="162.60001"
+ x2="609.32001"
+ y2="145.59"
+ id="lg5732"
+ xlink:href="#x5003_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12,0,0,1.12,-649.08,-160.62)" />
+ <linearGradient
+ x1="592.20001"
+ y1="156.45"
+ x2="609.98999"
+ y2="174.24001"
+ id="x5000_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12,0,0,1.12,-649.08,-160.62)">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="stop29124" />
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="1"
+ id="stop29126" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#FFFFFF" />
+ </linearGradient>
+ <linearGradient
+ x1="592.20001"
+ y1="156.45"
+ x2="609.98999"
+ y2="174.24001"
+ id="lg5735"
+ xlink:href="#x5000_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12,0,0,1.12,-649.08,-160.62)" />
+ <linearGradient
+ x1="308.54999"
+ y1="149.89999"
+ x2="299.72"
+ y2="148.83"
+ id="XMLID_2433_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#d6d6d6;stop-opacity:1"
+ offset="0"
+ id="71615" />
+ <stop
+ style="stop-color:#a5a5a5;stop-opacity:1"
+ offset="1"
+ id="71617" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#D6D6D6" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#D6D6D6" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#A5A5A5" />
+ </linearGradient>
+ <linearGradient
+ x1="308.54999"
+ y1="149.89999"
+ x2="299.72"
+ y2="148.83"
+ id="lg1952"
+ xlink:href="#XMLID_2433_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.03,0,0,1.03,-279.57,-124.36)" />
+ <radialGradient
+ cx="307.39999"
+ cy="121"
+ r="23.35"
+ fx="307.39999"
+ fy="121"
+ id="XMLID_2432_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.98,0,0,0.98,2.88,2.75)">
+ <stop
+ style="stop-color:#d2d2d2;stop-opacity:1"
+ offset="0.19"
+ id="71592" />
+ <stop
+ style="stop-color:#cfcfcf;stop-opacity:1"
+ offset="0.44999999"
+ id="71594" />
+ <stop
+ style="stop-color:#c7c7c7;stop-opacity:1"
+ offset="0.60000002"
+ id="71596" />
+ <stop
+ style="stop-color:#b9b9b9;stop-opacity:1"
+ offset="0.74000001"
+ id="71598" />
+ <stop
+ style="stop-color:#a4a4a4;stop-opacity:1"
+ offset="0.86000001"
+ id="71600" />
+ <stop
+ style="stop-color:#8a8a8a;stop-opacity:1"
+ offset="0.95999998"
+ id="71602" />
+ <stop
+ style="stop-color:gray;stop-opacity:1"
+ offset="1"
+ id="71604" />
+ <a:midPointStop
+ offset="0.19"
+ style="stop-color:#D2D2D2" />
+ <a:midPointStop
+ offset="0.8"
+ style="stop-color:#D2D2D2" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#808080" />
+ </radialGradient>
+ <radialGradient
+ cx="307.39999"
+ cy="121"
+ r="23.35"
+ fx="307.39999"
+ fy="121"
+ id="radialGradient2331"
+ xlink:href="#XMLID_2432_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-276.62,-121.54)" />
+ <linearGradient
+ x1="294.13"
+ y1="127.07"
+ x2="294.13"
+ y2="142.2"
+ id="XMLID_2430_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#b5d8ff;stop-opacity:1"
+ offset="0"
+ id="71582" />
+ <stop
+ style="stop-color:black;stop-opacity:1"
+ offset="1"
+ id="71584" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#B5D8FF" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#B5D8FF" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#000000" />
+ </linearGradient>
+ <linearGradient
+ x1="294.13"
+ y1="127.07"
+ x2="294.13"
+ y2="142.2"
+ id="lg2820"
+ xlink:href="#XMLID_2430_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.03,0,0,1.03,-279.57,-124.36)" />
+ <linearGradient
+ x1="279.10999"
+ y1="148.03"
+ x2="309.16"
+ y2="148.03"
+ id="XMLID_2429_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#e1e1e1;stop-opacity:1"
+ offset="0"
+ id="71564" />
+ <stop
+ style="stop-color:#e1e1e1;stop-opacity:1"
+ offset="0.25"
+ id="71566" />
+ <stop
+ style="stop-color:#a5a5a5;stop-opacity:1"
+ offset="0.44"
+ id="71568" />
+ <stop
+ style="stop-color:#a5a5a5;stop-opacity:1"
+ offset="1"
+ id="71570" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#E1E1E1" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E1E1E1" />
+ <a:midPointStop
+ offset="0.25"
+ style="stop-color:#E1E1E1" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E1E1E1" />
+ <a:midPointStop
+ offset="0.44"
+ style="stop-color:#A5A5A5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#A5A5A5" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#A5A5A5" />
+ </linearGradient>
+ <linearGradient
+ x1="279.10999"
+ y1="148.03"
+ x2="309.16"
+ y2="148.03"
+ id="lg2818"
+ xlink:href="#XMLID_2429_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.03,0,0,1.03,-279.57,-124.36)" />
+ <radialGradient
+ cx="622.34302"
+ cy="14.449"
+ r="26.496"
+ fx="622.34302"
+ fy="14.449"
+ id="lg3499_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.851,0,0,0.849,69.297,51.658)">
+ <stop
+ style="stop-color:#23468e;stop-opacity:1"
+ offset="0"
+ id="stop10972" />
+ <stop
+ style="stop-color:#012859;stop-opacity:1"
+ offset="1"
+ id="stop10974" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#23468E" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#23468E" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#012859" />
+ </radialGradient>
+ <radialGradient
+ cx="622.34302"
+ cy="14.449"
+ r="26.496"
+ fx="622.34302"
+ fy="14.449"
+ id="rg5791"
+ xlink:href="#lg3499_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.858,0,0,0.857,-511.7,9.02)" />
+ <linearGradient
+ x1="616.112"
+ y1="76.247002"
+ x2="588.14099"
+ y2="60.742001"
+ id="lg3497_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#01326e;stop-opacity:1"
+ offset="0"
+ id="stop10962" />
+ <stop
+ style="stop-color:#012859;stop-opacity:1"
+ offset="1"
+ id="stop10964" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#01326E" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#01326E" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#012859" />
+ </linearGradient>
+ <linearGradient
+ x1="617.698"
+ y1="82.445999"
+ x2="585.95203"
+ y2="54.848999"
+ id="lg3496_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0"
+ id="stop10950" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="stop10952" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#E5E5E5" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#CCCCCC" />
+ </linearGradient>
+ <linearGradient
+ x1="617.698"
+ y1="82.445999"
+ x2="585.95203"
+ y2="54.848999"
+ id="lg5794"
+ xlink:href="#lg3496_"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ x1="601.39001"
+ y1="55.341"
+ x2="588.29199"
+ y2="71.515999"
+ id="lg3495_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="stop10941" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="0.52200001"
+ id="stop10943" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="stop10945" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.522"
+ style="stop-color:#F2F2F2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#F2F2F2" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#CCCCCC" />
+ </linearGradient>
+ <linearGradient
+ x1="601.39001"
+ y1="55.341"
+ x2="588.29199"
+ y2="71.515999"
+ id="lg5771"
+ xlink:href="#lg3495_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.009,0,0,1.009,-581.615,-43.098)" />
+ <linearGradient
+ x1="611.34601"
+ y1="55.279999"
+ x2="590.39001"
+ y2="81.157997"
+ id="lg3494_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="stop10932" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="0.52200001"
+ id="stop10934" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="stop10936" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#D9D9D9" />
+ <a:midPointStop
+ offset="0.522"
+ style="stop-color:#F2F2F2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#F2F2F2" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#CCCCCC" />
+ </linearGradient>
+ <linearGradient
+ x1="611.34601"
+ y1="55.279999"
+ x2="590.39001"
+ y2="81.157997"
+ id="lg5774"
+ xlink:href="#lg3494_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.009,0,0,1.009,-581.616,-43.098)" />
+ <linearGradient
+ x1="798.72998"
+ y1="69.839996"
+ x2="799.04999"
+ y2="70.709999"
+ id="g3302_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#005e00;stop-opacity:1"
+ offset="0"
+ id="s6504" />
+ <stop
+ style="stop-color:#23a11f;stop-opacity:1"
+ offset="1"
+ id="s6506" />
+ <a:midPointstop
+ style="stop-color:#005E00"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#005E00"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#23A11F"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="798.72998"
+ y1="69.839996"
+ x2="799.04999"
+ y2="70.709999"
+ id="lg5851"
+ xlink:href="#g3302_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.204,0,0,1.263,-926.036,-60.001)" />
+ <linearGradient
+ x1="779.19"
+ y1="122.73"
+ x2="811.69"
+ y2="149.74001"
+ id="g3301_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,-0.25,0,1,0,129.19)">
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="0"
+ id="s6483" />
+ <stop
+ style="stop-color:#eee;stop-opacity:1"
+ offset="0.17"
+ id="s6485" />
+ <stop
+ style="stop-color:#e3e3e3;stop-opacity:1"
+ offset="0.34"
+ id="s6487" />
+ <stop
+ style="stop-color:#cfcfcf;stop-opacity:1"
+ offset="0.50999999"
+ id="s6489" />
+ <stop
+ style="stop-color:#b4b4b4;stop-opacity:1"
+ offset="0.67000002"
+ id="s6491" />
+ <stop
+ style="stop-color:#919191;stop-opacity:1"
+ offset="0.83999997"
+ id="s6493" />
+ <stop
+ style="stop-color:#666;stop-opacity:1"
+ offset="1"
+ id="s6495" />
+ <a:midPointstop
+ style="stop-color:#F2F2F2"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#F2F2F2"
+ offset="0.71" />
+ <a:midPointstop
+ style="stop-color:#666666"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="779.19"
+ y1="122.73"
+ x2="811.69"
+ y2="149.74001"
+ id="lg5855"
+ xlink:href="#g3301_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.204,-0.316,0,1.263,-926.036,103.123)" />
+ <clipPath
+ id="g3299_">
+ <use
+ id="use6469"
+ x="0"
+ y="0"
+ width="1005.92"
+ height="376.97"
+ xlink:href="#g101_" />
+ </clipPath>
+ <radialGradient
+ cx="1189.9301"
+ cy="100.05"
+ r="40.400002"
+ fx="1189.9301"
+ fy="100.05"
+ id="g3300_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.34,-8.46e-2,0,0.34,394.16,137.13)">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="s6472" />
+ <stop
+ style="stop-color:white;stop-opacity:0"
+ offset="1"
+ id="s6474" />
+ <a:midPointstop
+ style="stop-color:#FFFFFF"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#000000"
+ offset="1" />
+ </radialGradient>
+ <radialGradient
+ cx="1199.74"
+ cy="97.150002"
+ r="40.400002"
+ fx="1199.74"
+ fy="97.150002"
+ id="rg5860"
+ xlink:href="#g3300_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.409,-0.107,0,0.429,-451.489,113.149)" />
+ <linearGradient
+ x1="796.38"
+ y1="67.580002"
+ x2="781.28003"
+ y2="58.549999"
+ id="g3298_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#4c8bca;stop-opacity:1"
+ offset="0"
+ id="s6462" />
+ <stop
+ style="stop-color:#b7e9ff;stop-opacity:1"
+ offset="1"
+ id="s6464" />
+ <a:midPointstop
+ style="stop-color:#4C8BCA"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#4C8BCA"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#B7E9FF"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="800.97998"
+ y1="140.72"
+ x2="777.71997"
+ y2="121.76"
+ id="g3297_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,-0.25,0,1,0,129.19)">
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0"
+ id="s6448" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="s6450" />
+ <a:midPointstop
+ style="stop-color:#E5E5E5"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#E5E5E5"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#CCCCCC"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="800.97998"
+ y1="140.72"
+ x2="777.71997"
+ y2="121.76"
+ id="lg5890"
+ xlink:href="#g3297_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,-0.25,0,1,0,129.19)" />
+ <linearGradient
+ x1="790.03998"
+ y1="-16.33"
+ x2="779.84003"
+ y2="-3.73"
+ id="g3296_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,70.17)">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="s6439" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="0.51999998"
+ id="s6441" />
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="1"
+ id="s6443" />
+ <a:midPointstop
+ style="stop-color:#D9D9D9"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#D9D9D9"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#F2F2F2"
+ offset="0.52" />
+ <a:midPointstop
+ style="stop-color:#F2F2F2"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#CCCCCC"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="790.03998"
+ y1="-16.33"
+ x2="779.84003"
+ y2="-3.73"
+ id="lg5866"
+ xlink:href="#g3296_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.204,0,0,1.263,-926.036,28.6)" />
+ <linearGradient
+ x1="785.84003"
+ y1="72.989998"
+ x2="785.26001"
+ y2="76.279999"
+ id="g3293_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="s6412" />
+ <stop
+ style="stop-color:#737373;stop-opacity:1"
+ offset="1"
+ id="s6414" />
+ <a:midPointstop
+ style="stop-color:#FFFFFF"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#737373"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="785.84003"
+ y1="72.989998"
+ x2="785.26001"
+ y2="76.279999"
+ id="lg5871"
+ xlink:href="#g3293_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.204,0,0,1.263,-926.036,-60.001)" />
+ <linearGradient
+ x1="789.37"
+ y1="69.879997"
+ x2="791.03998"
+ y2="77.120003"
+ id="g3292_"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#999;stop-opacity:1"
+ offset="0"
+ id="s6403" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="0.28"
+ id="s6405" />
+ <stop
+ style="stop-color:#666;stop-opacity:1"
+ offset="1"
+ id="s6407" />
+ <a:midPointstop
+ style="stop-color:#999999"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#999999"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#F2F2F2"
+ offset="0.28" />
+ <a:midPointstop
+ style="stop-color:#F2F2F2"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#666666"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="789.37"
+ y1="69.879997"
+ x2="791.03998"
+ y2="77.120003"
+ id="lg5874"
+ xlink:href="#g3292_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.204,0,0,1.263,-926.036,-60.001)" />
+ <linearGradient
+ x1="786.65997"
+ y1="136.12"
+ x2="786.71002"
+ y2="134.33"
+ id="g3290_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,-0.25,0,1,0,137.29)">
+ <stop
+ style="stop-color:#d9d9d9;stop-opacity:1"
+ offset="0"
+ id="s6380" />
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="1"
+ id="s6382" />
+ <a:midPointstop
+ style="stop-color:#D9D9D9"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#D9D9D9"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#B2B2B2"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="786.65997"
+ y1="136.12"
+ x2="786.71002"
+ y2="134.33"
+ id="lg5878"
+ xlink:href="#g3290_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.204,-0.316,0,1.263,-926.036,113.351)" />
+ <radialGradient
+ cx="1458.77"
+ cy="-5.0999999"
+ r="35.130001"
+ fx="1458.77"
+ fy="-5.0999999"
+ id="g3289_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.42,0,0,0.42,167.09,79.84)">
+ <stop
+ style="stop-color:white;stop-opacity:1"
+ offset="0"
+ id="s6371" />
+ <stop
+ style="stop-color:#999;stop-opacity:1"
+ offset="1"
+ id="s6373" />
+ <a:midPointstop
+ style="stop-color:#FFFFFF"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#FFFFFF"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#999999"
+ offset="1" />
+ </radialGradient>
+ <radialGradient
+ cx="1458.77"
+ cy="-5.0999999"
+ r="35.130001"
+ fx="1458.77"
+ fy="-5.0999999"
+ id="rg5881"
+ xlink:href="#g3289_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.505,0,0,0.53,-724.957,40.636)" />
+ <radialGradient
+ cx="1612.98"
+ cy="-4.4699998"
+ r="36.580002"
+ fx="1612.98"
+ fy="-4.4699998"
+ id="g3288_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.34,0,0,0.36,238.56,86.87)">
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0"
+ id="s6362" />
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0.63999999"
+ id="s6364" />
+ <stop
+ style="stop-color:#737373;stop-opacity:1"
+ offset="1"
+ id="s6366" />
+ <a:midPointstop
+ style="stop-color:#E5E5E5"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#E5E5E5"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#B2B2B2"
+ offset="0.64" />
+ <a:midPointstop
+ style="stop-color:#B2B2B2"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#737373"
+ offset="1" />
+ </radialGradient>
+ <radialGradient
+ cx="1612.98"
+ cy="-4.4699998"
+ r="36.580002"
+ fx="1612.98"
+ fy="-4.4699998"
+ id="rg5884"
+ xlink:href="#g3288_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.408,0,0,0.448,-638.943,49.495)" />
+ <radialGradient
+ cx="1470.5"
+ cy="-10.21"
+ r="33.290001"
+ fx="1470.5"
+ fy="-10.21"
+ id="g3287_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.42,0,0,0.42,167.09,79.84)">
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1"
+ offset="0"
+ id="s6347" />
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0.38999999"
+ id="s6349" />
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1"
+ offset="0.75"
+ id="s6351" />
+ <stop
+ style="stop-color:#aaa;stop-opacity:1"
+ offset="0.88"
+ id="s6353" />
+ <stop
+ style="stop-color:#9e9e9e;stop-opacity:1"
+ offset="0.97000003"
+ id="s6355" />
+ <stop
+ style="stop-color:#999;stop-opacity:1"
+ offset="1"
+ id="s6357" />
+ <a:midPointstop
+ style="stop-color:#E5E5E5"
+ offset="0" />
+ <a:midPointstop
+ style="stop-color:#E5E5E5"
+ offset="0.5" />
+ <a:midPointstop
+ style="stop-color:#B2B2B2"
+ offset="0.39" />
+ <a:midPointstop
+ style="stop-color:#B2B2B2"
+ offset="0.87" />
+ <a:midPointstop
+ style="stop-color:#999999"
+ offset="1" />
+ </radialGradient>
+ <radialGradient
+ cx="1470.5"
+ cy="-10.21"
+ r="33.290001"
+ fx="1470.5"
+ fy="-10.21"
+ id="rg5887"
+ xlink:href="#g3287_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.505,0,0,0.53,-724.957,40.636)" />
+ <pattern
+ patternTransform="matrix(0.592927,0,0,0.592927,78,462)"
+ id="cream-spots"
+ height="32"
+ width="32"
+ patternUnits="userSpaceOnUse">
+ <g
+ transform="translate(-365.3146,-513.505)"
+ id="g3047">
+ id="path2858" />
+ <path
+ inkscape:label="#path2854"
+ sodipodi:nodetypes="czzzz"
+ style="fill:#e3dcc0"
+ id="path3060"
+ d="M 390.31462,529.50504 C 390.31462,534.47304 386.28262,538.50504 381.31462,538.50504 C 376.34662,538.50504 372.31462,534.47304 372.31462,529.50504 C 372.31462,524.53704 376.34662,520.50504 381.31462,520.50504 C 386.28262,520.50504 390.31462,524.53704 390.31462,529.50504 z " />
+</g>
+ </pattern>
+ <pattern
+ patternTransform="matrix(0.733751,0,0,0.733751,67,367)"
+ id="dark-cream-spots"
+ height="32"
+ width="32"
+ patternUnits="userSpaceOnUse">
+ <g
+ transform="translate(-408.0946,-513.505)"
+ id="dark-cream-spot"
+ inkscape:label="#g3043">
+ <path
+ sodipodi:nodetypes="czzzz"
+ style="fill:#c8c5ac"
+ d="M 433.09458,529.50504 C 433.09458,534.47304 429.06258,538.50504 424.09458,538.50504 C 419.12658,538.50504 415.09458,534.47304 415.09458,529.50504 C 415.09458,524.53704 419.12658,520.50504 424.09458,520.50504 C 429.06258,520.50504 433.09458,524.53704 433.09458,529.50504 z "
+ id="path2953" />
+ </g>
+ </pattern>
+ <pattern
+ patternTransform="matrix(0.375,0,0,0.375,379,400)"
+ id="white-spots"
+ height="32"
+ width="32"
+ patternUnits="userSpaceOnUse">
+ <g
+ transform="translate(-484.3997,-513.505)"
+ id="white-spot"
+ inkscape:label="#g3035">
+ <path
+ style="opacity:0.25;fill:white"
+ id="path3033"
+ d="M 509.39967,529.50504 C 509.39967,534.47304 505.36767,538.50504 500.39967,538.50504 C 495.43167,538.50504 491.39967,534.47304 491.39967,529.50504 C 491.39967,524.53704 495.43167,520.50504 500.39967,520.50504 C 505.36767,520.50504 509.39967,524.53704 509.39967,529.50504 z "
+ sodipodi:nodetypes="czzzz" />
+ </g>
+ </pattern>
+ <pattern
+ patternTransform="matrix(0.455007,0,0,0.455007,-5e-5,1.9e-5)"
+ id="black-spots"
+ height="32"
+ width="32"
+ patternUnits="userSpaceOnUse">
+ <g
+ transform="translate(-448.3997,-513.505)"
+ id="black-spot"
+ inkscape:label="#g3039">
+ <path
+ sodipodi:nodetypes="czzzz"
+ d="M 473.39967,529.50504 C 473.39967,534.47304 469.36767,538.50504 464.39967,538.50504 C 459.43167,538.50504 455.39967,534.47304 455.39967,529.50504 C 455.39967,524.53704 459.43167,520.50504 464.39967,520.50504 C 469.36767,520.50504 473.39967,524.53704 473.39967,529.50504 z "
+ id="path2961"
+ style="opacity:0.25;fill:black" />
+ </g>
+ </pattern>
+ <linearGradient
+ x1="501.0903"
+ y1="-19.2544"
+ x2="531.85413"
+ y2="0.72390002"
+ id="linearGradient17334"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0"
+ id="stop17336" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0.51120001"
+ id="stop17338" />
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0.64609998"
+ id="stop17340" />
+ <stop
+ style="stop-color:#16336e;stop-opacity:1"
+ offset="1"
+ id="stop17342" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#B4DAEA" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#B4DAEA" />
+ <a:midPointStop
+ offset="0.5112"
+ style="stop-color:#B4DAEA" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#B4DAEA" />
+ <a:midPointStop
+ offset="0.6461"
+ style="stop-color:#5387BA" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#5387BA" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#16336E" />
+ </linearGradient>
+ <linearGradient
+ x1="415.73831"
+ y1="11.854"
+ x2="418.13361"
+ y2="18.8104"
+ id="linearGradient17426"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.8362,0.5206,-1.1904,0.992,147.62,-30.9374)">
+ <stop
+ style="stop-color:#ccc;stop-opacity:1"
+ offset="0"
+ id="stop17428" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="1"
+ id="stop17430" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#CCCCCC" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#CCCCCC" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#F2F2F2" />
+ </linearGradient>
+ <linearGradient
+ x1="478.21341"
+ y1="-131.9297"
+ x2="469.85818"
+ y2="-140.28481"
+ id="linearGradient17434"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5592,0.829,-0.829,0.5592,101.3357,-104.791)">
+ <stop
+ style="stop-color:#f3403f;stop-opacity:1"
+ offset="0"
+ id="stop17436" />
+ <stop
+ style="stop-color:#d02a28;stop-opacity:1"
+ offset="0.37889999"
+ id="stop17438" />
+ <stop
+ style="stop-color:#b21714;stop-opacity:1"
+ offset="0.77649999"
+ id="stop17440" />
+ <stop
+ style="stop-color:#a6100c;stop-opacity:1"
+ offset="1"
+ id="stop17442" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#F3403F" />
+ <a:midPointStop
+ offset="0.4213"
+ style="stop-color:#F3403F" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#A6100C" />
+ </linearGradient>
+ <linearGradient
+ x1="502.70749"
+ y1="115.3013"
+ x2="516.39001"
+ y2="127.1953"
+ id="linearGradient17709"
+ xlink:href="#XMLID_1749_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9703,0.2419,-0.2419,0.9703,11.0227,-35.6159)" />
+ <linearGradient
+ x1="506.09909"
+ y1="-11.5137"
+ x2="527.99609"
+ y2="2.7063999"
+ id="linearGradient17711"
+ xlink:href="#XMLID_1752_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <linearGradient
+ x1="516.57672"
+ y1="-15.769"
+ x2="516.57672"
+ y2="0.84280002"
+ id="linearGradient17713"
+ xlink:href="#XMLID_1753_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <linearGradient
+ x1="505.62939"
+ y1="-14.9526"
+ x2="527.49402"
+ y2="-0.7536"
+ id="linearGradient17715"
+ xlink:href="#XMLID_1756_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <linearGradient
+ x1="500.70749"
+ y1="-13.2441"
+ x2="513.46442"
+ y2="-2.1547"
+ id="linearGradient17717"
+ xlink:href="#XMLID_1757_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <linearGradient
+ x1="473.7681"
+ y1="209.17529"
+ x2="486.98099"
+ y2="213.2001"
+ id="linearGradient17721"
+ xlink:href="#XMLID_2274_"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ x1="481.23969"
+ y1="212.5742"
+ x2="472.92981"
+ y2="207.4967"
+ id="linearGradient17723"
+ xlink:href="#XMLID_2275_"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ x1="500.70749"
+ y1="-13.2441"
+ x2="513.46442"
+ y2="-2.1547"
+ id="linearGradient17416"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0"
+ id="stop17418" />
+ <stop
+ style="stop-color:#96bad6;stop-opacity:1"
+ offset="1"
+ id="stop17420" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#96BAD6"
+ offset="1" />
+ </linearGradient>
+ <defs
+ id="defs9929">
+ <path
+ d="M 489.21,209.35 L 485.35,203.63 C 483.63,204.25 473.47,208.93 471.5,210.18 C 470.57,210.77 470.17,211.16 469.72,212.48 C 470.93,212.31 471.72,212.49 473.42,213.04 C 473.26,214.77 473.24,215.74 473.57,218.2 C 474.01,216.88 474.41,216.49 475.34,215.9 C 477.33,214.65 487.49,209.97 489.21,209.35 z "
+ id="XMLID_960_" />
+ </defs>
+ <clipPath
+ id="clipPath17448">
+ <use
+ id="use17450"
+ x="0"
+ y="0"
+ width="744.09448"
+ height="600"
+ xlink:href="#XMLID_960_" />
+ </clipPath>
+ <linearGradient
+ x1="473.7681"
+ y1="209.17529"
+ x2="486.98099"
+ y2="213.2001"
+ id="linearGradient17452"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#f3403f;stop-opacity:1"
+ offset="0"
+ id="stop17454" />
+ <stop
+ style="stop-color:#d02a28;stop-opacity:1"
+ offset="0.37889999"
+ id="stop17456" />
+ <stop
+ style="stop-color:#b21714;stop-opacity:1"
+ offset="0.77649999"
+ id="stop17458" />
+ <stop
+ style="stop-color:#a6100c;stop-opacity:1"
+ offset="1"
+ id="stop17460" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0.4213" />
+ <a:midPointStop
+ style="stop-color:#A6100C"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="481.23969"
+ y1="212.5742"
+ x2="472.92981"
+ y2="207.4967"
+ id="linearGradient17463"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#f3403f;stop-opacity:1"
+ offset="0"
+ id="stop17465" />
+ <stop
+ style="stop-color:#d02a28;stop-opacity:1"
+ offset="0.37889999"
+ id="stop17467" />
+ <stop
+ style="stop-color:#b21714;stop-opacity:1"
+ offset="0.77649999"
+ id="stop17469" />
+ <stop
+ style="stop-color:#a6100c;stop-opacity:1"
+ offset="1"
+ id="stop17471" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#F3403F"
+ offset="0.4213" />
+ <a:midPointStop
+ style="stop-color:#A6100C"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="481.23969"
+ y1="212.5742"
+ x2="472.92981"
+ y2="207.4967"
+ id="linearGradient17807"
+ xlink:href="#XMLID_2275_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-177.1654,35.43307)" />
+ <linearGradient
+ x1="473.7681"
+ y1="209.17529"
+ x2="486.98099"
+ y2="213.2001"
+ id="linearGradient17810"
+ xlink:href="#XMLID_2274_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-177.1654,35.43307)" />
+ <linearGradient
+ x1="502.70749"
+ y1="115.3013"
+ x2="516.39001"
+ y2="127.1953"
+ id="linearGradient17812"
+ xlink:href="#XMLID_1749_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9703,0.2419,-0.2419,0.9703,11.0227,-35.6159)" />
+ <linearGradient
+ x1="506.09909"
+ y1="-11.5137"
+ x2="527.99609"
+ y2="2.7063999"
+ id="linearGradient17814"
+ xlink:href="#XMLID_1752_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <linearGradient
+ x1="516.57672"
+ y1="-15.769"
+ x2="516.57672"
+ y2="0.84280002"
+ id="linearGradient17816"
+ xlink:href="#XMLID_1753_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <linearGradient
+ x1="505.62939"
+ y1="-14.9526"
+ x2="527.49402"
+ y2="-0.7536"
+ id="linearGradient17818"
+ xlink:href="#XMLID_1756_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <linearGradient
+ x1="502.70749"
+ y1="115.3013"
+ x2="516.39001"
+ y2="127.1953"
+ id="linearGradient17347"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9703,0.2419,-0.2419,0.9703,11.0227,-35.6159)">
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0"
+ id="stop17349" />
+ <stop
+ style="stop-color:#96bad6;stop-opacity:1"
+ offset="1"
+ id="stop17351" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#5387BA" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#5387BA" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#96BAD6" />
+ </linearGradient>
+ <linearGradient
+ x1="516.57672"
+ y1="-15.769"
+ x2="516.57672"
+ y2="0.84280002"
+ id="linearGradient17379"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b2b2b2;stop-opacity:1"
+ offset="0"
+ id="stop17381" />
+ <stop
+ style="stop-color:#f2f2f2;stop-opacity:1"
+ offset="1"
+ id="stop17383" />
+ <a:midPointStop
+ offset="0"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="0.5"
+ style="stop-color:#B2B2B2" />
+ <a:midPointStop
+ offset="1"
+ style="stop-color:#F2F2F2" />
+ </linearGradient>
+ <linearGradient
+ x1="502.70749"
+ y1="115.3013"
+ x2="516.39001"
+ y2="127.1953"
+ id="linearGradient17862"
+ xlink:href="#XMLID_1749_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9703,0.2419,-0.2419,0.9703,-166.1427,-0.18283)" />
+ <linearGradient
+ x1="505.62939"
+ y1="-14.9526"
+ x2="527.49402"
+ y2="-0.7536"
+ id="linearGradient17864"
+ xlink:href="#XMLID_1756_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <defs
+ id="defs3859">
+ <polygon
+ points="465.54,213.52 481.94,217.46 482.74,216.71 487.46,198.05 471.08,194.07 470.26,194.83 465.54,213.52 "
+ id="XMLID_343_" />
+ </defs>
+ <linearGradient
+ x1="471.0806"
+ y1="201.07761"
+ x2="481.91711"
+ y2="210.4977"
+ id="linearGradient17389"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#6498c1;stop-opacity:1"
+ offset="0.005618"
+ id="stop17391" />
+ <stop
+ style="stop-color:#79a9cc;stop-opacity:1"
+ offset="0.2332"
+ id="stop17393" />
+ <stop
+ style="stop-color:#a4cde2;stop-opacity:1"
+ offset="0.74049997"
+ id="stop17395" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="1"
+ id="stop17397" />
+ <a:midPointStop
+ style="stop-color:#6498C1"
+ offset="5.618000e-003" />
+ <a:midPointStop
+ style="stop-color:#6498C1"
+ offset="0.4438" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="1" />
+ </linearGradient>
+ <clipPath
+ id="clipPath17400">
+ <use
+ id="use17402"
+ x="0"
+ y="0"
+ width="744.09448"
+ height="600"
+ xlink:href="#XMLID_343_" />
+ </clipPath>
+ <linearGradient
+ x1="505.62939"
+ y1="-14.9526"
+ x2="527.49402"
+ y2="-0.7536"
+ id="linearGradient17404"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0"
+ id="stop17406" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0.51120001"
+ id="stop17408" />
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0.64609998"
+ id="stop17410" />
+ <stop
+ style="stop-color:#16336e;stop-opacity:1"
+ offset="1"
+ id="stop17412" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5112" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.6461" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#16336E"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="506.09909"
+ y1="-11.5137"
+ x2="527.99609"
+ y2="2.7063999"
+ id="linearGradient17882"
+ xlink:href="#XMLID_1752_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)" />
+ <defs
+ id="defs3826">
+ <polygon
+ points="463.52,216.14 480.56,220.24 481.36,219.5 483.03,202.04 469.05,196.69 468.24,197.45 463.52,216.14 "
+ id="XMLID_338_" />
+ </defs>
+ <linearGradient
+ x1="468.2915"
+ y1="204.7612"
+ x2="479.39871"
+ y2="214.4166"
+ id="linearGradient17357"
+ gradientUnits="userSpaceOnUse">
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0"
+ id="stop17359" />
+ <stop
+ style="stop-color:#96bad6;stop-opacity:1"
+ offset="1"
+ id="stop17361" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#96BAD6"
+ offset="1" />
+ </linearGradient>
+ <clipPath
+ id="clipPath17364">
+ <use
+ id="use17366"
+ x="0"
+ y="0"
+ width="744.09448"
+ height="600"
+ xlink:href="#XMLID_338_" />
+ </clipPath>
+ <linearGradient
+ x1="506.09909"
+ y1="-11.5137"
+ x2="527.99609"
+ y2="2.7063999"
+ id="linearGradient17368"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6868,0.4269,-0.9821,0.821,111.6149,-5.7901)">
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0"
+ id="stop17370" />
+ <stop
+ style="stop-color:#b4daea;stop-opacity:1"
+ offset="0.51120001"
+ id="stop17372" />
+ <stop
+ style="stop-color:#5387ba;stop-opacity:1"
+ offset="0.64609998"
+ id="stop17374" />
+ <stop
+ style="stop-color:#16336e;stop-opacity:1"
+ offset="1"
+ id="stop17376" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5112" />
+ <a:midPointStop
+ style="stop-color:#B4DAEA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.6461" />
+ <a:midPointStop
+ style="stop-color:#5387BA"
+ offset="0.5" />
+ <a:midPointStop
+ style="stop-color:#16336E"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ x1="296.4996"
+ y1="188.81061"
+ x2="317.32471"
+ y2="209.69398"
+ id="linearGradient2387"
+ xlink:href="#linearGradient2381"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.90776,0,0,0.90776,24.35648,49.24131)" />
+ <linearGradient
+ x1="296.4996"
+ y1="188.81061"
+ x2="317.32471"
+ y2="209.69398"
+ id="linearGradient5105"
+ xlink:href="#linearGradient2381"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.90776,0,0,0.90776,24.35648,49.24131)" />
+ <linearGradient
+ x1="296.4996"
+ y1="188.81061"
+ x2="317.32471"
+ y2="209.69398"
+ id="linearGradient5145"
+ xlink:href="#linearGradient2381"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.90776,0,0,0.90776,24.35648,49.24131)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2381"
+ id="linearGradient2371"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.90776,0,0,0.90776,24.35648,49.24131)"
+ x1="296.4996"
+ y1="188.81061"
+ x2="317.32471"
+ y2="209.69398" />
+ </defs>
+ <g
+ transform="matrix(0.437808,-0.437808,0.437808,0.437808,-220.8237,43.55311)"
+ id="g5089">
+ <path
+ d="M 8.4382985,-6.28125 C 7.8309069,-6.28125 4.125,-0.33238729 4.125,1.96875 L 4.125,28.6875 C 4.125,29.533884 4.7068159,29.8125 5.28125,29.8125 L 30.84375,29.8125 C 31.476092,29.8125 31.968751,29.319842 31.96875,28.6875 L 31.96875,23.46875 L 32.25,23.46875 C 32.74684,23.46875 33.156249,23.059339 33.15625,22.5625 L 33.15625,-5.375 C 33.15625,-5.8718398 32.74684,-6.28125 32.25,-6.28125 L 8.4382985,-6.28125 z "
+ transform="translate(282.8327,227.1903)"
+ style="fill:#5c5c4f;stroke:black;stroke-width:3.23021388;stroke-miterlimit:4;stroke-dasharray:none"
+ id="path5091" />
+ <rect
+ width="27.85074"
+ height="29.369793"
+ rx="1.1414107"
+ ry="1.1414107"
+ x="286.96509"
+ y="227.63805"
+ style="fill:#032c87"
+ id="rect5093" />
+ <path
+ d="M 288.43262,225.43675 L 313.67442,225.43675 L 313.67442,254.80655 L 287.29827,254.83069 L 288.43262,225.43675 z "
+ style="fill:white"
+ id="rect5095" />
+ <path
+ d="M 302.44536,251.73726 C 303.83227,259.59643 301.75225,263.02091 301.75225,263.02091 C 303.99609,261.41329 305.71651,259.54397 306.65747,257.28491 C 307.62455,259.47755 308.49041,261.71357 310.9319,263.27432 C 310.9319,263.27432 309.33686,256.07392 309.22047,251.73726 L 302.44536,251.73726 z "
+ style="fill:#a70000;fill-opacity:1;stroke-width:2"
+ id="path5097" />
+ <rect
+ width="25.241802"
+ height="29.736675"
+ rx="0.89682275"
+ ry="0.89682275"
+ x="290.73544"
+ y="220.92249"
+ style="fill:#809cc9"
+ id="rect5099" />
+ <path
+ d="M 576.47347,725.93939 L 582.84431,726.35441 L 583.25121,755.8725 C 581.35919,754.55465 576.39694,752.1117 574.98889,754.19149 L 574.98889,727.42397 C 574.98889,726.60151 575.65101,725.93939 576.47347,725.93939 z "
+ transform="matrix(0.499065,-0.866565,0,1,0,0)"
+ style="fill:#4573b3;fill-opacity:1"
+ id="rect5101" />
+ <path
+ d="M 293.2599,221.89363 L 313.99908,221.89363 C 314.45009,221.89363 314.81318,222.25673 314.81318,222.70774 C 315.02865,229.0361 295.44494,244.47124 292.44579,240.30491 L 292.44579,222.70774 C 292.44579,222.25673 292.80889,221.89363 293.2599,221.89363 z "
+ style="opacity:0.65536726;fill:url(#linearGradient2371);fill-opacity:1"
+ id="path5103" />
+ </g>
+</svg>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/jbosstools_logo.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/jbosstools_logo.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property2.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property3.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property3.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property4.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property4.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property5.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/add_property5.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations1_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations1_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations2.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations3.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/annotations3.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/autoLayout.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/autoLayout.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt2.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt3.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt3.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt4.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/butt4.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration10.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration10.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration11.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration11.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration12.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration12.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration2.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration3.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration3.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration4.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration4.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration5.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration5.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration6.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration6.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration7.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration7.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration8.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration8.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration9.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/dali_integration9.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagram1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagram1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagram2.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagram2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagramToolbar.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/diagramToolbar.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/expandState.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/expandState.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/exportAsImage.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/exportAsImage.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/layout.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/layout.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram2.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram3.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/map_diagram3.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/openMappingFile_but.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/openMappingFile_but.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/openSourceFile_but.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/openSourceFile_but.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0_b.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_0_b.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_1.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_1.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_10.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_10.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_11.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_11.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12_b.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_12_b.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_13.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_13.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_14.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_14.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_15.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_15.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_16.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_16.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_17.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_17.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_17_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_17_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_b.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_b.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_g.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_18_g.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_b.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_b.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_c.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_c.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_d.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_19_d.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_2.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_20.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_20.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_21_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_21_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_21_b.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_21_b.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_22.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_22.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_2_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_2_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_3.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_3.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_b.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_b.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_c.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_c.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_d.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_4_d.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_5.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_5.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_6.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_6.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_7.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_7.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8a.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8a.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8b.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_8b.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_9.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/plugins_9.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/prototypingQueries.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/prototypingQueries.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/saveDiagram.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/saveDiagram.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/sticky_but.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/sticky_but.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toggleConnections.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toggleConnections.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarAutolayout.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarAutolayout.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarExpandCollapse.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarExpandCollapse.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarRefresh.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarRefresh.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarShowHideConnections.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarShowHideConnections.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarShowHideShapes.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarShowHideShapes.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarZoom.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/toolbarZoom.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/visibleState.png
===================================================================
(Binary files differ)
Property changes on: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/images/plugins/visibleState.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/introduction.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/introduction.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/introduction.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,166 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="introduction">
+
+ <title>Introduction</title>
+
+ <para>
+ <property>Hibernate Tools</property> is a collection of tools for <ulink url="http://www.hibernate.org/">Hibernate 3</ulink> and related projects. The tools provide Ant
+ tasks and Eclipse plugins for performing reverse engineering, code generation, visualization
+ and interaction with Hibernate.</para>
+
+ <section id="hibernate_key_features">
+ <title>Key Features</title>
+
+ <para>The table below lists the key features found in <property>Hibernate Tools</property>.</para>
+
+ <table>
+ <title>Key Functionality for Hibernate Tools</title>
+ <tgroup cols="3">
+
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="5*"/>
+ <colspec colnum="3" align="left" colwidth="1*"/>
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+ <entry>Chapter</entry>
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry>
+ <para>Code Generation through Ant Task</para>
+ </entry>
+ <entry>
+ <para>
+ Allows to generate mapping or Java code through reverse engineering, schema generation and generation of other artifacts during the build process.
+ </para>
+ </entry>
+ <entry>
+ <xref linkend="ant"/>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Wizards for creation purposes and code generation</para>
+ </entry>
+ <entry>
+ <para>
+ A set of wizards are provided with the <productname>Hibernate Eclipse Tools</productname> to quickly create common <productname>Hibernate</productname> files such as configuration (<filename>cfg.xml</filename>) files, mapping files and <filename>reveng.xml</filename> as well. The Code Generation wizard helps by generating a series of various artifacts, and there is even support for completely reverse engineering an existing database schema.
+ </para>
+ </entry>
+ <entry>
+ <xref linkend="map_file_wizard"/>
+ <xref linkend="hib_config_file"/>
+ <xref linkend="code_gen"/>
+ </entry>
+ </row>
+
+
+ <row>
+ <entry>
+ <para>Mapping and Configuration files Editors</para>
+ </entry>
+ <entry>
+ <para>
+ Support auto-completion and syntax highlighting. Editors also support semantic auto-completion for class names and property/field names, making it much more versatile than a normal XML editor.
+ </para>
+ </entry>
+ <entry>
+ <xref linkend="map_config_editor"/>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Tools for organizing and controlling Reverse Engineering</para>
+ </entry>
+ <entry>
+ <para>
+ The Code Generation wizard provides powerful functionality for generating a series of various artifacts such as domain model classes, mapping files, and annotated EJB3 entity beans, and the <filename>reveng.xml</filename> file editor provides control over this processes.
+ </para>
+ </entry>
+ <entry>
+ <xref linkend="code_gen"/>
+ <xref linkend="rev_xml_editor"/>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Hibernate Console</para>
+ </entry>
+ <entry>
+ <para>
+ It is a new perspective in Eclipse which provides an overview of your Hibernate Console configurations, and were you also can get an interactive view of your persistent classes and their relationships. The console allows you to execute HQL queries against your database and browse the result directly in Eclipse.
+ </para>
+ </entry>
+ <entry>
+ <xref linkend="hib_console"/>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>HQL Editor and Hibernate Criteria Editor</para>
+ </entry>
+ <entry>
+ <para>
+ The editors are provided for writing, editing and executing HQL queries and criterias. They also have the ability to generate simple queries.
+ </para>
+ </entry>
+ <entry>
+ <xref linkend="hql_and_criteria_editors"/>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Functional Mapping Diagram</para>
+ </entry>
+ <entry>
+ <para>Makes possible to visualize the structure of entities and the relationships between them.</para>
+ </entry>
+ <entry>
+ <xref linkend="map_diagram"/>
+ </entry>
+ </row>
+
+
+ <row>
+ <entry>
+ <para>Eclipse JDT integration</para>
+ </entry>
+ <entry>
+ <para>
+ <productname>Hibernate Tools</productname> integrates into the Java code completion and build support for Java in Eclipse. This gives you HQL code completion inside Java code. Additionally, <productname>Hibernate Tools</productname> will display problem markers if your queries are not valid against the console configuration associated with the project.
+ </para>
+ </entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+
+ <section>
+ <title>Other relevant resources on the topic</title>
+
+ <para>The <productname>Hibernate Tools</productname> page on <ulink url="http://www.hibernate.org/subprojects/tools.html">hibernate.org</ulink>.</para>
+ <para>
+ All <productname>JBDS</productname> release documentation can be found on the <ulink url="http://docs.redhat.com/docs/en-US/JBoss_Developer_Studio/index.html">RedHat Documentation</ulink> website.
+ </para>
+ <para>
+ There is some additional information on <productname>Hibernate</productname> on the <ulink url="http://www.jboss.org/community/wiki/JBossHibernate3">JBoss Wiki</ulink> page.
+ </para>
+ <para>
+ Nightly documentation builds are available <ulink url="http://download.jboss.org/jbosstools/nightly-docs/">here</ulink>.
+ </para>
+ </section>
+
+</chapter>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/master.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/master.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/master.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+"http://www.docbook.org/xml/4.3/docbookx.dtd"
+
+[
+<!ENTITY introduction SYSTEM "introduction.xml">
+<!ENTITY setup SYSTEM "setup.xml">
+<!ENTITY codegenarchitecture SYSTEM "codegenarchitecture.xml">
+<!ENTITY plugins SYSTEM "plugins.xml">
+<!ENTITY ant SYSTEM "ant.xml">
+<!ENTITY reveng SYSTEM "reverseengineering.xml">
+<!ENTITY codegen SYSTEM "codegen.xml">
+
+<!ENTITY seamlink "../../seam/html_single/index.html">
+<!ENTITY aslink "../../as/html_single/index.html">
+<!ENTITY esblink "../../esb_ref_guide/html_single/index.html">
+<!ENTITY gsglink "../../GettingStartedGuide/html_single/index.html">
+<!ENTITY hibernatelink "../../hibernatetools/html_single/index.html">
+<!ENTITY jbpmlink "../../jbpm/html_single/index.html">
+<!ENTITY jsflink "../../jsf/html_single/index.html">
+<!ENTITY jsfreflink "../../jsf_tools_ref_guide/html_single/index.html">
+<!ENTITY jsftutoriallink "../../jsf_tools_tutorial/html_single/index.html">
+<!ENTITY strutsreflink "../../struts_tools_ref_guide/html_single/index.html">
+<!ENTITY strutstutoriallink "../../struts_tools_tutorial/html_single/index.html">
+
+]>
+<book>
+ <bookinfo>
+ <title>Hibernate Tools Reference Guide</title>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject role="fo">
+ <imagedata format="PNG" fileref="images/jbosstools_logo.png" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata/>
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
+ <author><firstname>Max</firstname><surname>Andersen</surname><email>max.andersen at jboss.com</email></author>
+ <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
+ <author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina at exadel.com</email></author>
+
+ <copyright>
+ <year>2007</year>
+ <year>2008</year>
+ <year>2009</year>
+ <year>2010</year>
+ <year>2011</year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+
+ <releaseinfo>
+ Version: 3.3.0.M5
+ </releaseinfo>
+
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/hibernate_logo_a.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+
+<!--<abstract>
+ <title/>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/hibernatetools/pdf/Hibernatetools_Reference_Guide.pdf">PDF version</ulink>
+ </para>
+</abstract>-->
+
+ </bookinfo>
+ <toc/>
+
+ &introduction;
+ &setup;
+ &codegenarchitecture;
+ &plugins;
+ &ant;
+ &reveng;
+ &codegen;
+
+
+ </book>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/plugins.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/plugins.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/plugins.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,2391 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="plugins" role="updated">
+ <title>Eclipse Plugins</title>
+ <para>
+ This chapter will introduce you to the set of wizards and editors provided by <productname>Hibernate Tools</productname> within Eclipse, which are designed to simplify working with <productname>Hibernate</productname>.
+ </para>
+ <section>
+ <title>Introduction</title>
+ <para>
+ Hibernate Eclipse Tools includes wizards for creating Hibernate mapping files, configuration files (<filename>.cfg.xml</filename>), <filename>reveng.xml</filename> files as well as wizards for adjusting Console Configuration and Code Generation. Special structured and XML editors and editors for executing HQL and Criteria queries are also provided in Hibernate Console. Refer to <xref linkend="hibernate_key_features"/> to find all the benefits that are provided by these tools within Eclipse.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para>
+ Please note that these tools do not try to hide any of <productname>Hibernates</productname> functionality; rather the tools make working with <productname>Hibernate</productname> easier. You are still encouraged to read the <ulink url="http://hibernate.org/docs">Hibernate Documentation</ulink> in order to be able to fully utilize <productname>Hibernate Tools</productname> and especially <productname>Hibernate</productname> itself.
+ </para>
+ </note>
+ <section id="download_base_project">
+ <title>Download base project</title>
+ <para>You can download the example projects that are used in this chapter.</para>
+ <para>
+ A <property>JPA base project</property> is available on the <ulink url="http://docs.jboss.org/tools/resources/">documentation resources page</ulink> together with a <ulink url="http://docs.jboss.org/tools/resources/TestHibernateproject_for_hibernate_jboss_tools.zip">base Java project</ulink>.
+ </para>
+ <para>Also you need start the <ulink url="http://docs.jboss.org/tools/resources/GSG_database.zip">database</ulink>.</para>
+ <note>
+ <title>Note:</title>
+ <para>The steps for running the database are documented in the <ulink url="http://docs.redhat.com/docs/en-US/JBoss_Developer_Studio/4.0/html-single/Getting_Started_Guide/index.html#start_dev_db">Getting Started Guide</ulink>.</para>
+ </note>
+ </section>
+ </section>
+ <section id="map_file_wizard">
+ <title>Creating a Hibernate Mapping File</title>
+ <para>Hibernate mapping files are used to specify how your objects relate to database tables.</para>
+ <para>
+ To create basic mappings for properties and associations, i. e. generate <filename>.hbm.xml</filename> files, Hibernate Tools provide a basic wizard which you can display by selecting <menuchoice><guimenuitem>File</guimenuitem><guimenuitem>New</guimenuitem>
+ <guimenuitem>Hibernate XML mapping file</guimenuitem>
+ </menuchoice>.
+ </para>
+ <para>
+ At first you will be asked to select a package or multiple individual classes to map. It is also possible to create an empty file: do not select any packages or classes and an empty <filename>.hbm</filename> file will be created in the specified location.
+ </para>
+ <para id="depth_control">
+ Using the <property>depth control</property> option you can define the dependency depth used when choosing classes.
+ </para>
+ <figure>
+ <title>Hibernate XML Mapping File Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_0.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The next wizard page lists the mappings to be generated. You can see the <guilabel>Customers</guilabel>, <guilabel>Orders</guilabel>, <guilabel>Productlines</guilabel> and <guilabel>Products</guilabel> classes added under <property>depth control</property> driving.
+ </para>
+ <figure>
+ <title>Mappings to be generated</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_0_a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>This wizard page display a preview of the generated <filename>.hbm</filename> files.</para>
+ <figure>
+ <title>Preview Generated Mapping Files</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_0_b.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Clicking the <guibutton>Finish</guibutton> button creates the files.</para>
+ </section>
+ <section id="hib_config_file">
+ <title>Creating a Hibernate Configuration File</title>
+ <para>
+ To be able to perform reverse engineering, prototype queries, and of course to simply use <property>Hibernate Core</property> a <filename>hibernate.properties</filename> or <filename>hibernate.cfg.xml</filename> file is needed. <property>Hibernate Tools</property> provides a wizard for generating the <filename>hibernate.cfg.xml</filename> file if you do not already have one.
+ </para>
+<!-- Testing video documentaiton -->
+ <figure>
+ <title>Hibernate Configuration File creation video</title>
+ <mediaobject>
+ <videoobject>
+ <videodata fileref="videos/hib-config-file-creation.mp4"/>
+ </videoobject>
+ <textobject>
+ <para>
+ This video illustrates the creation of a Hibernate Configuration File for an existing project
+ </para>
+ </textobject>
+ </mediaobject>
+ </figure>
+<!-- Testing video documentation -->
+ <para>Start the wizard by clicking <menuchoice><guimenuitem>File</guimenuitem><guimenuitem>New</guimenuitem>
+ <guimenuitem>Other</guimenuitem>
+ </menuchoice> (<keycombo><keycap>Ctrl</keycap>
+ <keycap>N</keycap>
+ </keycombo>), then select
+
+ <menuchoice><guimenuitem>Hibernate</guimenuitem>
+ <guimenuitem>Hibernate Configuration File (cfg.xml)</guimenuitem>
+ </menuchoice> and click the <guibutton>Next</guibutton> button.</para>
+ <figure>
+ <title>Hibernate Configuration File Wizard</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" fileref="images/plugins/plugins_1.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_1.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Note:</title>
+ <para>
+ The contents in the comboboxes for the JDBC driver class and JDBC URL change automatically, depending on the Dialect and actual driver you have chosen.
+ </para>
+ </note>
+ <para>
+ Enter your configuration information in this dialog. Details about the configuration options can be found in <ulink url="http://docs.jboss.org/ejb3/app-server/Hibernate3/reference/en/html_single">Hibernate Reference Documentation</ulink>.
+ </para>
+ <para>
+ Click the <guibutton>Finish</guibutton> button to create the configuration file, and after optionally creating a Console configuration, the <filename>hibernate.cfg.xml</filename> file will be automatically opened in an editor. The last option, <guilabel>Create Console Configuration</guilabel>, is enabled by default and when enabled, it will automatically use the <filename>hibernate.cfg.xml</filename> file for the basis of a Console configuration.
+ </para>
+ </section>
+ <section id="console_conf">
+ <title>Hibernate Console Configuration</title>
+ <para>
+ A Console configuration describes how the <property>Hibernate plugin</property> should configure <property>Hibernate</property> and what configuration files and classpaths are needed to load the POJO's, JDBC drivers etc. It is required to make use of query prototyping, reverse engineering and code generation. You can have multiple named console configurations. Normally you would just need one per project, but it is definitely possible to create more if required.
+ </para>
+ <section id="creat_console_conf">
+ <title>Creating a Hibernate Console Configuration</title>
+ <para>
+ You can create a console configuration by running the <guilabel>Console Configuration Wizard</guilabel>, shown in the following screenshot. The same wizard will also be used if you are coming from the <filename>hibernate.cfg.xml</filename> wizard and had enabled the <guilabel>Create Console Configuration</guilabel> option.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para>
+ The wizard will look at the current selection in the IDE and try to auto-detect the appropriate settings, which you then can approve or modify to suit your needs.
+ </para>
+ </note>
+ <para/>
+ <para>The dialog consists of five tabs: </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <guilabel>Main</guilabel>, which displays the basic and required settings</para>
+ </listitem>
+ </itemizedlist>
+ <figure>
+ <title> Creating Hibernate Console Configuration</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" fileref="images/plugins/plugins_2.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_2.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The following table describes the available settings on the <guilabel>Main</guilabel> tab. The wizard can automatically detect the default values for most of the settings if you started the wizard with the relevant Java project or resource selected.
+ </para>
+ <table>
+ <title>Hibernate Console Configuration Parameters</title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <colspec colnum="3" align="left" colwidth="1*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Parameter</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ <entry align="center">
+ <para>Default value</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Name</para>
+ </entry>
+ <entry>
+ <para>The unique name of the console configuration</para>
+ </entry>
+ <entry>
+ <para>Name of the selected project</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Type</para>
+ </entry>
+ <entry>
+ <para>
+ Choose between "Core", "Annotations" and "JPA". Note that the two latter requires running Eclipse IDE with a JDK 5 (or newer) runtime, otherwise you will get class loading and version errors.
+ </para>
+ <para>
+ You will also need to select the version of Hibernate your application server has (3.5, 3.6 or 4.0). Select a version from the drop-down box labelled <guilabel>Hibernate Version</guilabel>.
+ </para>
+ </entry>
+ <entry>
+ <para><guilabel>Core</guilabel> and <guilabel>Hibernate Version:</guilabel> 3.5</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Project</para>
+ </entry>
+ <entry>
+ <para>The name of a Java project whose classpath should be used in the console configuration</para>
+ </entry>
+ <entry>
+ <para>Name of the selected project</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Database connection</para>
+ </entry>
+ <entry>
+ <para>
+ DTP provided connection that you can use instead of what is defined in the <filename>cfg.xml</filename> and JPA <filename>persistence.xml</filename> files. It is possible to use an already configured Hibernate or JPA connection, or specify a new one here.
+ </para>
+ </entry>
+ <entry>
+ <para>[Hibernate Configured connection]</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Property file</para>
+ </entry>
+ <entry>
+ <para>Path to a <filename>hibernate.properties</filename> file</para>
+ </entry>
+ <entry>
+ <para>First <filename>hibernate.properties</filename> file found in the selected project</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Configuration file</para>
+ </entry>
+ <entry>
+ <para>Path to a <filename>hibernate.cfg.xml</filename> file</para>
+ </entry>
+ <entry>
+ <para>First <filename>hibernate.cfg.xml</filename> file found in the selected project</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Persistence unit</para>
+ </entry>
+ <entry>
+ <para>Name of the persistence unit to use</para>
+ </entry>
+ <entry>
+ <para>
+ No default value (let Hibernate Entity Manager find the persistence unit or it can be defined manually using the <guibutton>Browse</guibutton> button)
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <note>
+ <title>Tip:</title>
+ <para>
+ The two latter settings are usually not required if you specify a project that has a <filename> /hibernate.cfg.xml </filename> or <filename>/META-INF/persistence.xml</filename> file in its classpath.</para>
+ </note>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The <guilabel>Options</guilabel> tab the optional settings</para>
+ </listitem>
+ </itemizedlist>
+ <figure>
+ <title>Options Tab of the Console Configuration Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_2_a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The next table describes the Hibernate Console Configuration options available on the <guilabel>Options</guilabel> tab.</para>
+ <table>
+ <title>Hibernate Console Configuration Options</title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <colspec colnum="3" align="left" colwidth="1*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Parameter</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ <entry align="center">
+ <para>Auto detected value</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Database dialect</para>
+ </entry>
+ <entry>
+ <para>Define a database dialect. It is possible either to enter your own value or choose from list. </para>
+ </entry>
+ <entry>
+ <para>No default value</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Naming strategy</para>
+ </entry>
+ <entry>
+ <para>Fully qualified class name of a custom <code>NamingStrategy</code>. Only required if you use a special naming strategy.</para>
+ </entry>
+ <entry>
+ <para>No default value</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Entity resolver</para>
+ </entry>
+ <entry>
+ <para>Fully qualified class name of a custom <code>EntityResolver</code>. Only required if you have special XML entity includes in your mapping files.</para>
+ </entry>
+ <entry>
+ <para>No default value</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <itemizedlist>
+ <listitem>
+ <para><guilabel>Classpath</guilabel> for classpath</para>
+ </listitem>
+ </itemizedlist>
+ <figure>
+ <title>Specifying Classpath in Hibernate Console Configuration</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" fileref="images/plugins/plugins_3.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_3.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The following table specifies the parameters of the <guilabel>Classpath</guilabel> tab of the wizard.</para>
+ <table>
+ <title>Hibernate Console Configuration Classpath</title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <colspec colnum="3" colwidth="1*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Parameter</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ <entry align="center">
+ <para>Auto detected value</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Classpath</para>
+ </entry>
+ <entry>
+ <para>
+ The classpath for loading POJO and JDBC drivers; only needed if the default classpath of the Project does not contain the required classes. Do not add Hibernate core libraries or dependencies, they are already included. If you get ClassNotFound errors then check this list for possible missing or redundant directories or JAR files.
+ </para>
+ </entry>
+ <entry>
+ <para>Empty</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Include default classpath from project</para>
+ </entry>
+ <entry>
+ <para>When enabled the project classpath will be appended to the classpath specified above</para>
+ </entry>
+ <entry>
+ <para>Enabled</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <guilabel>Mappings</guilabel> for additional mappings</para>
+ </listitem>
+ </itemizedlist>
+ <figure>
+ <title>Specifying additional Mappings in Hibernate Console Configuration</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" fileref="images/plugins/plugins_4.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_4.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Parameters of the <guilabel>Mappings</guilabel> tab of the <property>Hibernate Console Configuration wizard</property> are explained below:</para>
+ <table>
+ <title>Hibernate Console Configuration Mappings</title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <colspec colnum="3" colwidth="1*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Parameter</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ <entry align="center">
+ <para>Auto detected value</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Mapping files </para>
+ </entry>
+ <entry>
+ <para>
+ List of additional mapping files that should be loaded. Note: A <filename>hibernate.cfg.xml</filename> or <filename>persistence.xml</filename> can also contain mappings. Thus if these are duplications here, you will get "Duplicate mapping" errors when using the console configuration.
+ </para>
+ </entry>
+ <entry>
+ <para>empty</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <itemizedlist>
+ <listitem>
+ <para>and the last tab <guilabel>Common</guilabel>
+ </para>
+ </listitem>
+ </itemizedlist>
+ <figure>
+ <title>Common Tab of the Console Configuration Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_4_a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The <guilabel>Common</guilabel> tab allows you to define the general aspects of the launch configuration including storage location, console encoding and some others.</para>
+ <para>
+ Clicking the <guibutton>Finish</guibutton> button creates the configuration and shows it in the <property>Hibernate Configurations view</property>.
+ </para>
+ <figure>
+ <title>Console Overview</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" fileref="images/plugins/plugins_5.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_5.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="modif_console_conf">
+ <title>Modifying a Hibernate Console Configuration </title>
+ <para>When you created a Hibernate Console Configuration you can modify it in two ways: </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ Right-click on the configuration in the <guilabel>Hibernate Configurations View</guilabel> and select <guimenuitem>Edit Configuration</guimenuitem>, or just double-click on the <guilabel>Console Configuration</guilabel> item.
+ </para>
+ <figure>
+ <title>Opening Edit Configuration Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_4_c.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ You will then see the <guilabel>Edit Configuration Wizard</guilabel>, which is similar to <guilabel>Create Console Configuration</guilabel>, described in <xref linkend="creat_console_conf"/>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>Use the <guilabel>Properties</guilabel> view to modify the Console Configuration properties.</para>
+ <figure>
+ <title>Properties View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_4_b.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The following table describes the available settings in the <guilabel>Properties</guilabel> view. Most properties can be changed by left clicking on them, but some can not.
+ <table>
+ <title>Properties</title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <colspec colnum="3" align="left" colwidth="1*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Property</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ <entry align="center">
+ <para>Is Changeable</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Additional mapping files </para>
+ </entry>
+ <entry>
+ <para>Count of additional mapping files that should be loaded. </para>
+ </entry>
+ <entry>
+ <para>False</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Configuration file</para>
+ </entry>
+ <entry>
+ <para>Path to a <filename>hibernate.cfg.xml</filename> file</para>
+ </entry>
+ <entry>
+ <para>False</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Connection</para>
+ </entry>
+ <entry>
+ <para>
+ DTP provided connection that you can use instead of what is in the <filename>cfg.xml</filename> and JPA <filename>persistence.xml</filename> files. It is possible to use either an already configured Hibernate or JPA connection, or specify a new one here.
+ </para>
+ </entry>
+ <entry>
+ <para>True</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Name</para>
+ </entry>
+ <entry>
+ <para>The unique name of the console configuration</para>
+ </entry>
+ <entry>
+ <para>True</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Project</para>
+ </entry>
+ <entry>
+ <para>The name of a Java project which classpath should be used in the console configuration</para>
+ </entry>
+ <entry>
+ <para>True</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Properties file</para>
+ </entry>
+ <entry>
+ <para>Path to a <filename>hibernate.properties</filename> file</para>
+ </entry>
+ <entry>
+ <para>False</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Type</para>
+ </entry>
+ <entry>
+ <para>
+ Choose between "CORE", "ANNOTATIONS" and "JPA" according to the method of relational mapping you want to
+ use. Note, the two latter requires running Eclipse IDE with a JDK 5 runtime, otherwise you will get class loading and/or version errors.
+ </para>
+ </entry>
+ <entry>
+ <para>True</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="closing_conf_config">
+ <title>Closing Hibernate Console Configuration</title>
+ <para>
+ To close <guilabel>Hibernate Console Configuration</guilabel> you need to right-click your configuration and choose the <guimenuitem>Close Configuration</guimenuitem> option.
+ </para>
+ <figure>
+ <title>Close Hibernate Console Configuration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_4_d.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ When closing the configuration the connection with database will be closed, JAR libs will be unlock (for Windows) and other resources will set as free.
+ </para>
+ </section>
+ </section>
+ <section id="refeng_codegen" role="updated">
+ <title>Reverse Engineering and Code Generation</title>
+ <para>
+ Hibernate provides "click-and-generate" reverse engineering and code generation facilities. This allows you to generate a range of artifacts based on database or an existing Hibernate configuration, be that mapping files or annotated classes. Some of these are POJO Java source files, Hibernate <filename>.hbm.xml</filename> files, <filename>hibernate.cfg.xml</filename> generation and schema documentation.
+ </para>
+ <para>
+ To start working with this process, start the <guilabel>Hibernate Code Generation</guilabel> tool which is available from the toolbar via the <property>Hibernate</property> icon or via the <menuchoice><guimenuitem>Run</guimenuitem><guimenuitem>Hibernate Code Generation</guimenuitem></menuchoice> menu item.
+ </para>
+ <section id="code_gen">
+ <title>Code Generation Launcher</title>
+ <para>
+ When you click on the <guimenuitem>Open Hibernate Code Generation Dialog...</guimenuitem> option the standard Eclipse launcher dialog will appear. In this dialog you can create, edit and delete named Hibernate code generation "launchers".
+ </para>
+ <figure id="hib_code_gen">
+ <title>Getting Hibernate Code Generation Launcher</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/plugins/plugins_6.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_6.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para/>
+ <figure>
+ <title>Hibernate Code Generation Launcher</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_7.png" format="PNG" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_7.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The first time you create a code generation launcher you should give it a meaningful name, otherwise the default prefix <guilabel>New_Generation</guilabel> will be used.
+ </para>
+ <note>
+ <title>Tip:</title>
+ <para>
+ The "At least one exporter option must be selected" warning indicates that for this launcher to work you need to select an exporter on the <guilabel>Exporter</guilabel> tab. When an exporter has been selected the warning will disappear.
+ </para>
+ </note>
+ <para>
+ The dialog also has the standard <guilabel>Refresh</guilabel> and <guilabel>Common</guilabel> tabs that can be used to configure which directories should be automatically refreshed and various general settings for launchers, such as saving them in a project for sharing the launcher within a team.
+ </para>
+ <para>On the <guilabel>Main</guilabel> tab you see the following fields:</para>
+ <table>
+ <title>Code generation "Main" tab fields</title>
+ <tgroup cols="2">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <colspec colnum="3" colwidth="0.5*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Field</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Console Configuration</para>
+ </entry>
+ <entry>
+ <para>The name of the console configuration that should be used when generating code</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Output directory</para>
+ </entry>
+ <entry>
+ <para>
+ The default location where all output will be written to. It's possible to enter absolute directory path, for example - <filename>d:/temp</filename>. Be aware that existing files will be overwritten, so be sure to specify the correct directory.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Reverse engineer from JDBC Connection</para>
+ </entry>
+ <entry>
+ <para>
+ If enabled, the tools will reverse engineer the database defined in the connection information in the selected Hibernate Console Configuration, and generate code based on the database schema. If not enabled, the code generation will be based on the existing mappings specified in the Hibernate Console configuration.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Package</para>
+ </entry>
+ <entry>
+ <para>The package name here is used as the default package name for any entities found when reverse engineering</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>reveng.xml</para>
+ </entry>
+ <entry>
+ <para>
+ Path to a <filename>reveng.xml</filename> file. A <filename>reveng.xml</filename> file allows you to control certain aspects of the reverse engineering process such as how JDBC types are mapped to Hibernate types, and which tables are included and excluded from the process (which is especially important). Clicking the <guibutton>Setup</guibutton> button allows you to select an existing <filename>reveng.xml</filename> file, or create a new one. See more details about the <filename>reveng.xml</filename> file in <xref linkend="reverseengineering"/>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>reveng. strategy</para>
+ </entry>
+ <entry>
+ <para>
+ If the <filename>reveng.xml</filename> file does not provide enough customization you can provide your own implementation of a <code>ReverseEngineeringStrategy</code>. The class needs to be in the classpath of the Console Configuration, otherwise you will get class not found exceptions. See <xref linkend="custom-reveng-strategy"/> for details and an example of a custom strategy.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Generate basic typed composite ids</para>
+ </entry>
+ <entry>
+ <para>
+ When a table that has a multi-column primary key a <code><composite-id></code> mapping will always be created. If this option is enabled and there are matching foreign-keys, each key column is still considered a 'basic' scalar (string, long, etc.) instead of a reference to an entity. If you disable this option a <code><key-many-to-one></code> instead. Note: a <code><many-to-one></code> property is still created, but is simply marked as non-updatable and non-insertable.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Detect optimistic lock columns</para>
+ </entry>
+ <entry>
+ <para>
+ Automatically detect optimistic lock columns. Controllable via reveng. strategy; the current default is to use columns named VERSION or TIMESTAMP.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Detect many-to-many tables</para>
+ </entry>
+ <entry>
+ <para>Automatically detect many-to-many tables. Controllable via reveng. strategy.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Detect one-to-one associations</para>
+ </entry>
+ <entry>
+ <para>
+ Reverse engineering detects one-to-one associations via primary key and both the <filename>hbm.xml</filename> file and annotation generation generates the proper code for it.
+ </para>
+ <para>
+ The detection is enabled by default (except for Seam 1.2 and Seam 2.0) reverse engineering. For Hibernate Tools generation there is a checkbox to disable this feature if it is not required.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Use custom templates</para>
+ </entry>
+ <entry>
+ <para>
+ If enabled, the Template directory will be searched first when looking up the templates, allowing you to redefine how the individual templates process the hibernate mapping model.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Template directory</para>
+ </entry>
+ <entry>
+ <para>A path to a directory with custom templates</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ <section id="exportes">
+ <title>Exporters</title>
+ <para>
+ The <guilabel>Exporters</guilabel> tab is used to specify the type of code that should be generated. Each selection represents an Exporter that is responsible for generating the code, hence the name.
+ </para>
+ <figure>
+ <title>Selecting Exporters</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_8.png" format="PNG" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_8.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The following table provides a short description of the various exporters. Remember you can add and remove any Exporters depending on your needs.
+ </para>
+ <table>
+ <title>Code generation "Exporter" tab fields</title>
+ <tgroup cols="2">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Field</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Domain code</para>
+ </entry>
+ <entry>
+ <para>Generates POJO's for all the persistent classes and components found in the given Hibernate configuration.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>DAO code</para>
+ </entry>
+ <entry>
+ <para>Generates a set of DAO's for each entity found.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Hibernate XML Mappings</para>
+ </entry>
+ <entry>
+ <para>Generate mapping (<filename>hbm.xml</filename>) files for each entity.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Hibernate XML Configuration</para>
+ </entry>
+ <entry>
+ <para>
+ Generate a <filename>hibernate.cfg.xml</filename> file. Used to keep the <filename>hibernate.cfg.xml</filename> file updated with any newly discovered mapping files.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Schema Documentation (.html)</para>
+ </entry>
+ <entry>
+ <para>Generates a set of HTML pages that documents the database schema and some of the mappings.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Generic Exporter (hbmtemplate)</para>
+ </entry>
+ <entry>
+ <para>Fully customizable exporter that can be used to perform custom generation.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Schema Export (.ddl)</para>
+ </entry>
+ <entry>
+ <para>Generates the appropriate SQL DDL and allows you to store the result in a file or export it directly to the database.</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ Each Exporter listens to certain properties which can be setup in the <guilabel>Properties</guilabel> section where you can add and remove predefined or customer properties for each of the exporters. The following table lists the time of writing predefined properties:
+ </para>
+ <para>
+ <table>
+ <title>Exporter Properties</title>
+ <tgroup cols="2">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" colwidth="3*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Name</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>jdk5</para>
+ </entry>
+ <entry>
+ <para>Generate Java 5 syntax</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>ejb3</para>
+ </entry>
+ <entry>
+ <para>Generate EJB 3 annotations</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>for_each</para>
+ </entry>
+ <entry>
+ <para>
+ Specifies for which type of model elements the exporter should create a file and run through the templates. Possible values are: entity, component, configuration
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>template_path</para>
+ </entry>
+ <entry>
+ <para>Custom template directory for this specific exporter. You can use Eclipse variables.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>template_name</para>
+ </entry>
+ <entry>
+ <para>Name for template relative to the template path</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>outputdir</para>
+ </entry>
+ <entry>
+ <para>Custom output directory for this specific exporter. You can use Eclipse variables.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>file_pattern</para>
+ </entry>
+ <entry>
+ <para>
+ Pattern to use for the generated files, relatively for the output dir. Example: <filename>{package-name}/{class-name}.java</filename>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>dot.executable</para>
+ </entry>
+ <entry>
+ <para>Executable to run GraphViz (only relevant, but optional for Schema documentation)</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>drop</para>
+ </entry>
+ <entry>
+ <para>Output will contain drop statements for the tables, indices and constraints</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>delimiter</para>
+ </entry>
+ <entry>
+ <para>If specified the statements will be dumped to this file</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>create</para>
+ </entry>
+ <entry>
+ <para>Output will contain create statements for the tables, indices and constraints</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>scriptToConsole</para>
+ </entry>
+ <entry>
+ <para>The script will be output to Console</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>exportToDatabase</para>
+ </entry>
+ <entry>
+ <para>Executes the generated statements against the database</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>outputFileName</para>
+ </entry>
+ <entry>
+ <para>If specified the statements will be dumped to this file</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>haltOnError</para>
+ </entry>
+ <entry>
+ <para>Halts the build process if an error occurs</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>format</para>
+ </entry>
+ <entry>
+ <para>Applies basic formatting to the statements</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>schemaUpdate</para>
+ </entry>
+ <entry>
+ <para>Updates a schema</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </para>
+ <para>
+ To add a property to the chosen Exporter click the <guibutton>Add</guibutton> button in the <guilabel>Properties</guilabel> section. In the resulting dialog you should select the property from the proposed list and the value for it.
+ </para>
+ <figure>
+ <title>Adding the Property for Schema Export (.ddl)</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_8a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Tip:</title>
+ <para>If the property is a directory, it is possible to browse directories in the <guilabel>Value</guilabel> field.</para>
+ </note>
+ <figure>
+ <title>Specifying the Property Value</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_8b.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ </section>
+ <section id="map_config_editor">
+ <title>Hibernate Mapping and Configuration File Editor</title>
+ <para>
+ The <property>Hibernate Mapping File editor</property> provides XML editing functionality for the <filename>hbm.xml</filename> and <filename>cfg.xml</filename> files. The editor is based on the Eclipse WTP tools and extends its functionality to provide Hibernate specific code completion.
+ </para>
+ <figure>
+ <title>XML Editing Functionality</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_9.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_9.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <section>
+ <title>Java property/class completion</title>
+ <para>
+ Package, class, and field completion is enabled for relevant XML attributes. The auto-completion tool detects its context and limits the completion for a tag (such as <code><property></code>) and only shows the properties and fields available in the enclosing <code><class></code>, <code><subclass></code> etc. It is also possible to navigate from the <filename>hbm.xml</filename> files to the relevant classes and fields in your Java code.
+ </para>
+ <figure>
+ <title>Navigation Functionality</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" fileref="images/plugins/plugins_10.png" format="PNG" scale="80"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_10.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ This is done via the standard hyperlink navigation functionality in Eclipse. By default this is done by pressing <keycap>F3</keycap> while the cursor is on a class or field, or by pressing <keycap>Ctrl</keycap> and the mouse button.
+ </para>
+ <para>For Java completion and navigation to work the file needs to reside inside an Eclipse Java project, otherwise the feature is not available.</para>
+ <note>
+ <title>Note:</title>
+ <para>Java completion does not require a Hibernate console configuration to be used.</para>
+ </note>
+ </section>
+ <section>
+ <title>Table/Column completion</title>
+ <para>Table and column completion is also available for all table and column attributes. </para>
+ <figure>
+ <title>Table and Column Completion</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_11.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_11.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <important>
+ <title>Important:</title>
+ <para>
+ Table and Column completion requires a properly configured Hibernate console configuration, and this configuration should be the default for the project where the <filename>hbm.xml</filename> resides.
+ </para>
+ </important>
+ <para>
+ You can check which console configuration is selected in the Properties of a project under the <guilabel>Hibernate Settings</guilabel> page. When a proper configuration is selected it will be used to fetch the table and column names in the background.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para>
+ Currently it is not recommended to use this feature on large databases since it does not fetch the information iteratively. This will be improved in future versions.
+ </para>
+ </note>
+ </section>
+ <section>
+ <title>Configuration property completion</title>
+ <para>
+ Code completion for the value of <code><property> name</code> attributes are available when editing the <filename>cfg.xml</filename> file.
+ </para>
+ <figure>
+ <title>Property Completion</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_12.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_12.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ </section>
+ <section id="map_config_struct_editor">
+ <title>Structured Hibernate Mapping and Configuration File Editor</title>
+ <para>
+ The structured editor represents a file in a tree form. It also provides a way to modify the structure of the file and its elements with the help of tables provided on the right-hand area.
+ </para>
+ <para>
+ To open any mapping file in the editor, select <menuchoice><guimenuitem>Open With</guimenuitem><guimenuitem>Hibernate 3.0 XML Editor</guimenuitem></menuchoice> from the context menu of the file. The editor is shown in the following image:
+ </para>
+ <figure>
+ <title>Structured hbm.xml Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_12_a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ For the configuration file you should select <menuchoice><guimenuitem>Open With</guimenuitem><guimenuitem>Hibernate Configuration 3.0 XML Editor</guimenuitem></menuchoice>.
+ </para>
+ <figure>
+ <title>Structured cfg.xml Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_12_b.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="properties_editor">
+ <title>JBoss Tools Properties Editor</title>
+ <para>
+ The editor is designed to edit <filename>.properties</filename> files. It contains two tabs: the <guilabel>Properties</guilabel> (UI) tab and the <guilabel>Source</guilabel> tab for manual editing.
+ </para>
+ <para>
+ For <filename>hibernate.properties</filename> files the <guilabel>JBoss Tools Properties Editor</guilabel> provides content assist for both Hibernate properties and values. You can make use of the content assist while editing the file in the <guilabel>Source</guilabel> view and in the <guilabel>Properties</guilabel> view of the editor.
+ </para>
+ <para>To add the property in the <guilabel>Properties</guilabel> view, click the <guibutton>Add</guibutton> button.</para>
+ <figure>
+ <title>Adding the Property</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/add_property1.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ In the <guilabel>Name</guilabel> field press <keycombo><keycap>Ctrl</keycap><keycap>Space</keycap></keycombo> to invoke the content assist. It will suggest <code>'hibernate.'</code> which is the prefix for all hibernate properties. After selecting <code>'hibernate.'</code> and invoking the content assist again, other prefixes and properties are displayed as the proposals, with a description for each one.
+ </para>
+ <figure>
+ <title>Content Assist for Properties Names</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/add_property2.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>When invoking the content assist in the <guilabel>Value</guilabel> field, it also provides a list of proposals.</para>
+ <figure>
+ <title>Content Assist for Properties Values</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/add_property3.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>In the <guilabel>Source</guilabel> view of the editor, content assist can also be invoked both for properties names and values:</para>
+ <figure>
+ <title>Content Assist in the Source view</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/add_property4.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <figure>
+ <title>Content Assist in the Source view</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/add_property5.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="rev_xml_editor">
+ <title>Reveng.xml Editor</title>
+ <para>
+ A <filename>reveng.xml </filename> file is used to customize and control how reverse engineering is performed by the tools. The plugins provide an editor to assist in editing this file.
+ </para>
+ <para>
+ The editor is intended to allow easy definition of type mappings, table include and excludes, and specific override settings for columns, e.g. define an explicit name for a column when the default naming rules are not applicable.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para>
+ Not all the features of the <filename>.reveng.xml</filename> file are exposed or fully implemented in the editor, but the main functionality is there. To understand the full flexibility of the <filename>reveng.xml</filename> file, please see <xref linkend="hibernaterevengxmlfile"/>
+ </para>
+ </note>
+ <para>
+ The editor is activated as soon as a <filename>.reveng.xml </filename> file is opened. To create an initial <filename>reveng.xml </filename> file the <guilabel>Reverse Engineering File Wizard</guilabel> can be started by pressing <keycombo><keycap>Ctrl</keycap><keycap>N</keycap></keycombo> and then selecting <menuchoice><guimenuitem>Hibernate</guimenuitem><guimenuitem>Hibernate Reverse Engineering File (reveng.xml)</guimenuitem></menuchoice>.
+ </para>
+ <figure>
+ <title>ChooseReverse Engineering File Wizard </title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_22.png" format="PNG" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_22.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ Or you can get it via the <guilabel>Code Generation Launcher</guilabel> by checking the appropriate section in the <guilabel>Main</guilabel> tab of the <guilabel>Getting Hibernate Code Generation Wizard</guilabel> (see <xref linkend="hib_code_gen"/>).
+ </para>
+ <para>
+ The following screenshot shows the <guilabel>Overview</guilabel> page where the appropriate console configuration is selected (it is auto-detected if Hibernate 3 support is enabled for the project).
+ </para>
+ <figure>
+ <title>Overview Page</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_13.png" format="PNG" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_13.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The <guilabel>Table Filter</guilabel> page allows you to specify which tables to include and exclude. Clicking the <guibutton>Refresh</guibutton> button shows the tables from the database that have not yet been excluded.
+ </para>
+ <figure>
+ <title>Table Filters Page</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_14.png" format="PNG" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_14.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The <guilabel>Type Mappings</guilabel> page is used to specify type mappings from JBDC types to any Hibernate type (including user types) if the default rules are not applicable. To see the database tables press the <guibutton>Refresh</guibutton> button underneath. For more information on type mappings please see the <xref linkend="type_map"/> section.
+ </para>
+ <figure>
+ <title>Type Mappings Page</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_15.png" format="PNG" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_15.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The <guilabel>Table and Columns</guilabel> page allows you to explicitly set which details (e.g. which hibernatetype and propertyname) should be used in the reverse engineered model. For more details on how to configure the tables while reverse engineering read <xref linkend="tab_and_col"/>.
+ </para>
+ <figure>
+ <title>Table and Columns Page</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_16.png" format="PNG" />
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_16.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="hib_console">
+ <title>Hibernate Console Perspective</title>
+ <para>
+ The <guilabel>Hibernate Console Perspective</guilabel> combines a set of views which allow you to see the structure of your mapped entities and classes, edit HQL queries, execute the queries, and view the results. To use this perspective you need to create a <guilabel>Hibernate Console Configuration</guilabel> (see <xref linkend="console_conf"/> for more information).
+ </para>
+ <section>
+ <title>Viewing the entity structure</title>
+ <para>
+ To view your new configuration and entity or class structure, switch to the <guilabel>Hibernate Configurations View</guilabel>. Expanding the tree allows you to browse the class or entity structure, as well as view the relationships.
+ </para>
+ <figure>
+ <title>Hibernate Console Perspective</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_17.png"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_17.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The <guilabel>Console Configuration</guilabel> does not dynamically adjust to changes performed in mappings and Java code. To reload the configuration select the configuration and click the <guibutton>Reload</guibutton> button in the view toolbar or in the context menu.
+ </para>
+ <para>
+ It is possible to open source and mapping files for objects showed in the <guilabel>Hibernate Configurations View</guilabel>. Just bring up the context menu for an object and select <guimenuitem>Open Source File</guimenuitem> to see the appropriate Java class or <guimenuitem>Open Mapping File</guimenuitem> to open a <filename>.hbm.xml</filename> file.
+ </para>
+ <figure>
+ <title>Opening Source for Objects</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_17_a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <section id="map_diagram">
+ <title>Mapping Diagram</title>
+ <para>
+ In order to visualize how entities are related, as well as view their structures, a <guilabel>Mapping Diagram</guilabel> is provided. It is available by right clicking on the entity you want view a mapping diagram for and then selecting <guilabel>Mapping Diagram</guilabel>.
+ </para>
+ <figure>
+ <title>Mapping Diagram</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_18.png"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_18.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ To make <guilabel>Mapping Diagram</guilabel> usage easier you can use the <guilabel>Rules</guilabel>, <guilabel>Grid</guilabel>, <guilabel>Snap to Geometry</guilabel> checkboxes in the <guimenu>View</guimenu> menu.
+ </para>
+ <figure>
+ <title>View menu</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/map_diagram1.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ If you select the <guilabel>Rulers</guilabel> checkbox, the view print page scale will be added to the page. The numbers on the scale displays its size in inches. If you click on the scale a <guilabel>Ruler Guide</guilabel> will appear on the diagram. You can connect any diagram item to it. To connect the items you should move their tops to the Ruler Guide. And while moving the ruler guide, the items will be moved together with it as a whole.
+ </para>
+ <figure>
+ <title>Moving the Ruler guide</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/map_diagram2.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>If you select the <guilabel>Grid</guilabel> checkbox, a grid will appear on the diagram.</para>
+ <figure>
+ <title>Grid on Mapping diagram</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/map_diagram3.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The <guilabel>Snap to Geometry</guilabel> checkbox allows you to align the diagram items with the grid.</para>
+ <para>
+ For better navigating through the diagram use the <guilabel>Outline view</guilabel>, which is available in the structural and graphical modes.
+ </para>
+ <figure>
+ <title>Navigating in the Structural Mode</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_18_a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>To switch between the view modes, use the buttons in the top-right corner of the <guilabel>Outline view</guilabel>.</para>
+ <figure>
+ <title>Navigating in the Graphical Mode</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_18_b.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The options in the context menu of the mapping diagram are listed in the next table.</para>
+ <table>
+ <title>Context Menu Options of the Mapping Diagram</title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" align="left" colwidth="1*"/>
+ <colspec colnum="3" align="left" colwidth="3*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Icon</para>
+ </entry>
+ <entry align="center">
+ <para>Command</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/toggleConnections.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Show|Hide connections</para>
+ </entry>
+ <entry>Allows you to select what types of connections should be shown on the diagram: <itemizedlist>
+ <listitem>
+ <para>Property Mappings</para>
+ </listitem>
+ <listitem>
+ <para>Class Mappings</para>
+ </listitem>
+ <listitem>
+ <para>Associations</para>
+ </listitem>
+ <listitem>
+ <para>Foreign key constraints</para>
+ </listitem>
+ </itemizedlist>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para/>
+ </entry>
+ <entry>
+ <para>Select All</para>
+ </entry>
+ <entry>
+ <para>Selects all the diagram elements</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/autoLayout.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Auto layout</para>
+ </entry>
+ <entry>
+ <para>Used to dispose all the items in the diagram in a standard manner</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/exportAsImage.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Export as Image</para>
+ </entry>
+ <entry>
+ <para>
+ Allows the diagram to be exported as a <filename>PNG</filename>,<filename>JPEG</filename> or <filename>BMP</filename> file
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>When you open the context menu for an item in the diagram, it differs quite significantly from the one described before.</para>
+ <figure>
+ <title>Context Menu in Mapping Item</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_18_g.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The next table describes the additional options found in the mapping items context menu:</para>
+ <table>
+ <title>Extra Options in the Context Menu of Mapping Item</title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" align="left" colwidth="1*"/>
+ <colspec colnum="3" align="left" colwidth="3*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Icon</para>
+ </entry>
+ <entry align="center">
+ <para>Command</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/openSourceFile_but.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Open Source File</para>
+ </entry>
+ <entry>
+ <para>
+ Opens the source file for a chosen object or element. The selected element will be highlighted in the open file.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/openMappingFile_but.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Open Mapping File</para>
+ </entry>
+ <entry>
+ <para>
+ Opens a mapping file for a chosen object or element. The selected element will be highlighted in the open file.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/visibleState.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Show|Hide shape(s)</para>
+ </entry>
+ <entry>
+ <para>Used to hide or show an item on the mapping diagram</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/expandState.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Expand|Collapse shape(s)</para>
+ </entry>
+ <entry>
+ <para>Used to expand and collapse fields displayed by the item</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <note>
+ <title>Tip:</title>
+ <para>All these context menu options are also available in the <guilabel>Outline</guilabel> view.</para>
+ </note>
+ <para>The following table lists the available keyboard shortcuts.</para>
+ <table>
+ <title>Hibernate Mapping Diagram Shortcut Keys</title>
+ <tgroup cols="2">
+ <colspec colnum="1" align="left" colwidth="3*"/>
+ <colspec colnum="2" align="left" colwidth="1*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Command</para>
+ </entry>
+ <entry align="center">
+ <para>Binding</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>Scroll the diagram content</para>
+ </entry>
+ <entry>
+ <para>
+ <keycombo>
+ <keycap>Ctrl</keycap>
+ <keycap>Shift</keycap>
+ <keycap>arrows</keycap>
+ </keycombo>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Collapse or Expand selected item(s)</para>
+ </entry>
+ <entry>
+ <para>
+ <keycap>Enter</keycap>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Show or Hide selected item(s)</para>
+ </entry>
+ <entry>
+ <para>
+ <keycap>+</keycap>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Sort items in alphabetical order or return to the initial state</para>
+ </entry>
+ <entry>
+ <para>
+ <keycap>Space</keycap>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>Navigate between the items</para>
+ </entry>
+ <entry>
+ <para>
+ <keycap>Arrows</keycap>
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ It is possible to save the diagram in the Eclipse workspace. Select <menuchoice><guimenuitem>File</guimenuitem><guimenuitem>Save As</guimenuitem></menuchoice>, and the wizard will ask you to specify the location within you project where you wish to save the file, and provide the name for the diagram. The default name is the item's names concatenated with the ampersand symbols. The file is saved with the <filename>.hibernate</filename> extension.
+ </para>
+ <figure>
+ <title>The Diagram saved in the Workspace</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/saveDiagram.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Note:</title>
+ <para>
+ If you restart Eclipse with the mapping diagram opened, the mapping diagram will be restored with the message like on the figure below. To view the diagram content, you should refresh the view.
+ </para>
+ </note>
+ <figure>
+ <title>The Diagram after Restarting the Eclipse</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/diagram1.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <figure>
+ <title>The Diagram after Refreshing</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/diagram2.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>There are some useful commands in the toolbar.</para>
+ <figure>
+ <title>The Diagram View Toolbar</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/diagramToolbar.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>They are described in the table below.</para>
+ <table>
+ <title>Command in Diagram View Toolbar </title>
+ <tgroup cols="3">
+ <colspec colnum="1" align="left" colwidth="1*"/>
+ <colspec colnum="2" align="left" colwidth="1*"/>
+ <colspec colnum="3" align="left" colwidth="3*"/>
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Icon</para>
+ </entry>
+ <entry align="center">
+ <para>Command</para>
+ </entry>
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/toolbarRefresh.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Refresh Visual Mapping</para>
+ </entry>
+ <entry>
+ <para>It will update the <guilabel>Mapping Diagram</guilabel> the if <guilabel>Console Configuration</guilabel> was changed. </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/toolbarZoom.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Zoom Box</para>
+ </entry>
+ <entry>
+ <para>
+ Used to define scale of the diagram. It is also used for printing <guilabel>Mapping Diagrams</guilabel>. If you want to print the whole <guilabel>diagram</guilabel> to one page, you need select the <guilabel>Page</guilabel> option in the <guilabel>Zoom Box</guilabel> drop down list.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/toolbarAutolayout.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Auto layout</para>
+ </entry>
+ <entry>
+ <para>Used to arrange all diagram items in a standard manner.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/toolbarShowHideConnections.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Show|Hide connections</para>
+ </entry>
+ <entry>
+ <para>
+ Used to show or hide a connection on the diagram. You can also choose what type of connections must be present on the diagram (<guilabel>Property Mappings</guilabel>, <guilabel>Class Mappings</guilabel>, <guilabel>Associations</guilabel> or <guilabel>Foreign key constraints</guilabel>).
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/toolbarExpandCollapse.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para>Expand|Collapse</para>
+ </entry>
+ <entry>
+ <para>Used for expanding or collapsing fields of the item.</para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/toolbarShowHideShapes.png"/>
+ </imageobject>
+ </inlinemediaobject>
+ </para>
+ </entry>
+ <entry>
+ <para> Show|Hide shape(s)</para>
+ </entry>
+ <entry>
+ <para>Used to hide or show an item on the mapping diagram.</para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ </section>
+ <section>
+ <title>Prototyping Queries</title>
+ <para>
+ Queries can be prototyped by entering them into the <guilabel>HQL</guilabel> or <guilabel>Criteria Editor</guilabel>. To execute a query click the green run button in the editor toolbar, or press <keycombo><keycap>Ctrl</keycap><keycap>Enter</keycap></keycombo>.
+ </para>
+ <section id="hql_and_criteria_editors">
+ <title>HQL Editor and Hibernate Criteria Editor</title>
+ <para>
+ To open the query editors right-click your projects <guilabel>Console Configuration</guilabel> and select <guimenuitem>HQL Editor</guimenuitem> (or <guimenuitem>Hibernate Criteria Editor</guimenuitem>).
+ </para>
+ <figure>
+ <title>Opening HQL Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/prototypingQueries.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Tip:</title>
+ <para>
+ If the context menu items are disabled then you need at first to create a <guilabel>Session Factory</guilabel>. That is done by expanding the <guilabel>Session Factory</guilabel> node.
+ </para>
+ </note>
+ <para>When they are opened, the editors they should automatically detect the chosen <guilabel>Console Configuration</guilabel>.</para>
+ <para>
+ To generate a predefined query for any entity (or any entity child node) listed in the <guilabel>Session Factory</guilabel> you should double-click it. This will open the <guilabel>HQL Editor</guilabel> with the associated query.
+ </para>
+ <para>
+ Choosing <guimenuitem>HQL Editor</guimenuitem> in the context menu for any entity (or any entity child node) will also open the HQL Editor with the associated query. If you select <guimenuitem>Hibernate Criteria Editor</guimenuitem> in the context menu, it will open <guilabel>Hibernate Criteria Editor</guilabel> with the associated criteria.
+ </para>
+ <figure>
+ <title>Generating Simple Queries</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_19.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_19.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ It is also possible to copy a portion of code from a <filename>.java</filename> file into the <guilabel>HQL</guilabel> or <guilabel>Criteria editor</guilabel>. To do this make use of the Quick Fix option (<keycombo><keycap>Ctrl</keycap><keycap>1</keycap></keycombo>).
+ </para>
+ <figure>
+ <title>Quick Fix Option Demonstration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_19_b.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ You can also update the original Java code with changes made in the HQL or Criteria editor. For that you should save your HQL/Criteria query and submit the replacement code when prompted by the confirmation dialog.
+ </para>
+ <figure>
+ <title>Updating Java Code</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_19_c.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ In addition, you can pin the <guilabel>HQL editor</guilabel> and <guilabel>Criteria editor</guilabel> as a tab in the <guilabel>Hibernate Query Result</guilabel> view. For that you need click on the <guibutton>Stick result to one tab</guibutton> button (<inlinemediaobject><imageobject><imagedata fileref="images/plugins/sticky_but.png"/></imageobject></inlinemediaobject>). In this state query executions results will be shown in one tab (no more will be opened).
+ </para>
+ <para>
+ You are able to rename the <guilabel>Hibernate Query Result</guilabel> tab. Click the tab, and type a new name in the <menuchoice><guimenuitem>Property View</guimenuitem><guimenuitem>Tab name</guimenuitem></menuchoice> field.
+ </para>
+ <figure>
+ <title>Tab Renaming</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/plugins_19_d.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section>
+ <title>Error Handling</title>
+ <para>
+ Errors raised during the creation of the <guilabel>Session Factory</guilabel>, or when executing the queries (e.g. if your configuration or query is incorrect), will be shown in a message dialog or inclined in the view that detected the error. You may get more information about the error in the <guilabel>Error Log</guilabel> view on the right pane.
+ </para>
+ <para>
+ Results of a query will be shown in the <guilabel>Hibernate Query Result</guilabel> view and details of possible errors (syntax errors, database errors, etc.) can be seen in the <guilabel>Error Log</guilabel> view.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para>
+ HQL queries are executed by default using the <code>list()</code> function, and without any row limit could return a large result set. You may run out of memory. To avoid this you can enter a value in the <guilabel>Max</guilabel> results field to reduce the number of elements that are returned.
+ </para>
+ </note>
+ </section>
+ <section>
+ <title>Dynamic Query Translator</title>
+ <para>
+ If the <guilabel>Hibernate Dynamic Query Translator</guilabel> view is visible, it will show the generated SQL for a HQL query while you write in the <guilabel>HQL Editor</guilabel> .
+ </para>
+ <figure>
+ <title>Hibernate Dynamic Query Translator View</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_20.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_20.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The translation is performed each time you stop typing in the editor. If there are errors in the HQL code the parse exception will be shown embedded in the view.
+ </para>
+ </section>
+ </section>
+ <section>
+ <title>Properties View</title>
+ <para>
+ As you can see in the figure below, when clicking on class or entity the <guilabel>Properties</guilabel> view shows the number of query results as well as the execution time.
+ </para>
+ <figure>
+ <title>Properties View</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_21_a.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_21_a.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ It also displays the structure of any persistent object selected in the <guilabel>Hibernate Query Results View</guilabel>. Editing is not yet supported.
+ </para>
+ <figure>
+ <title>Properties View for Selected Object</title>
+ <mediaobject>
+ <imageobject role="fo">
+ <imagedata align="center" scale="80" fileref="images/plugins/plugins_21_b.png" format="PNG"/>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/plugins/plugins_21_b.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ You can also use <guilabel>Properties</guilabel> view when clicking on the configuration itself in <guilabel>Hibernate Configuration</guilabel> view (see <xref linkend="modif_console_conf"/>).
+ </para>
+ </section>
+ </section>
+ <section id="jpa_annotations">
+ <title>Hibernate:add JPA annotations refactoring </title>
+ <para>Using this wizard you can add the following Hibernate annotations to a class: <code>@Column</code>, <code>@Entity</code>, <code>@ManyToOne</code>, <code>@OneToMany</code>, <code>@OneToOne</code>, <code>@ManyToMany</code>, <code>@MappedSuperclass</code>, <code>@Id</code>, <code>@GeneratedValue</code>, <code>@Version </code>
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para><code>@Column</code> is added to all String properties.</para>
+ </listitem>
+ <listitem>
+ <para>
+ <code>@Entity</code> is always declared before any class where it has not yet been defined.</para>
+ </listitem>
+ <listitem>
+ <para>
+ <code>@ManyToOne</code>, <code>@OneToMany</code>, <code>@OneToOne</code>, <code>@ManyToMany</code> - these annotations are declared according to the classes hierarchy.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <code>@MappedSuperclass</code> is added to abstract superclasses.</para>
+ </listitem>
+ <listitem>
+ <para>
+ <code>@Id</code>, <code>@GeneratedValue</code> are only added automatically to the properties under the name "Id", where they have not yet been defined.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <code>@Version</code> is declared in case you select optimistic locking (see <xref linkend="optim_lock"/>).</para>
+ </listitem>
+ </itemizedlist>
+ <note>
+ <title>Note:</title>
+ <para>
+ This section doesn't cover the definitions of the <property>Hibernate annotations</property>. For more information read the <ulink url="http://docs.jboss.org/hibernate/stable/annotations/reference/en/html/">Hibernate Annotations Documentation</ulink>.
+ </para>
+ </note>
+ <para>
+ To open this wizard you should right click the class you want to add the annotations to and select <menuchoice><guimenuitem>Source</guimenuitem><guimenuitem>Generate Hibernate/JPA annotations</guimenuitem></menuchoice> from the context menu. You will see the <guilabel>Hibernate: add JPA annotations</guilabel> dialog.
+ </para>
+ <figure>
+ <title>Starting Hibernate:add JPA annotations dialog</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/annotations1.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The top section of this dialog lists all the classes that will be passed through refactoring. Next to the class you have selected, this list also displays its superclasses and the classes that the objects present in the current class as properties. If you want to add new classes or packages to the list, you should click the <guibutton>Back</guibutton> button. This will display the <guilabel>Add classes and packages</guilabel> page.
+ </para>
+ <figure>
+ <title>Add classes and packages page </title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/annotations1_a.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ Here you can add additional classes or entire packages, and you can limit the dependencies depth by selecting the <guilabel>depth control</guilabel> option (you can find more information on this option in <xref linkend="depth_control"/>). When you are finished click the <guibutton>Next</guibutton> button and you will be returned to <guilabel>The following classes will be changed</guilabel> page.</para>
+ <para>
+ By default the tags are added to the fields of selected classes. You can change this option to <guilabel>Getters</guilabel> in the <guilabel>Preferred location of Annotations</guilabel> drop down list, which results in the annotations being added to the getter methods. If you choose <guilabel>Auto select from class preference</guilabel> then the annotations are added according to the position of the majority of the existing annotations.
+ </para>
+ <para>
+ If it is necessary to map your <code>String</code> properties to the columns that length differ from the default value (255), change the <guilabel>Default string length</guilabel> field and the <code>@Column(length = your length)</code> annotation will be created for every <code>String</code> property.
+ </para>
+ <para id="optim_lock">
+ You can add optimistic locking capabilities to an entity bean by selecting the <guilabel>Enable optimistic locking</guilabel> checkbox. This operation will add the version property to all the selected classes. The property will be also annotated with <code>@Version</code>, and a getter and setter will be created. If the property is already exists, it won't be created, but the getters and setters will be generated. If there is already <code>@MappedSuperclass</code> annotation with <code>@Version</code> in the base class of the current class, <code>@Version</code> is not inserted into the current class.
+ </para>
+ <para>After defining all the required settings click the <guibutton>Next</guibutton> button.</para>
+ <figure>
+ <title>Hibernate:add JPA annotations view</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/annotations2.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The view represents two windows: one with the source code and and the second with refactored one. With the help of the <inlinemediaobject><imageobject><imagedata fileref="images/plugins/butt1.png"/></imageobject></inlinemediaobject>, <inlinemediaobject><imageobject><imagedata fileref="images/plugins/butt2.png"/></imageobject></inlinemediaobject>, <inlinemediaobject><imageobject><imagedata fileref="images/plugins/butt3.png"/></imageobject></inlinemediaobject>, <inlinemediaobject><imageobject><imagedata fileref="images/plugins/butt4.png"/></imageobject></inlinemediaobject> buttons you can quickly navigate between the differences in the code. If you don't agree with some changes you can't undo them but you can remove the class from the list of classes that need refactoring.
+ </para>
+ <figure>
+ <title>List of classes that need refactoring</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/annotations3.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>To apply the changes click the <guibutton>Finish</guibutton> button.</para>
+ </section>
+ <section id="debug_log">
+ <title>Enable debug logging in the plugins</title>
+ <para>
+ It is possible to configure the Eclipse plugin to route all logging performed by the plugins and Hibernate code it self to the <guilabel>Error Log</guilabel> view in Eclipse.
+ </para>
+ <para>
+ The <guilabel>Error Log</guilabel> view is very useful tool to use when solving any problems which appear in the Hibernate Tools plugins. You can use it if there are troubles setting up a <guilabel>Hibernate Console Configuration</guilabel>.
+ </para>
+ <para>
+ This is done by editing the <filename>hibernate-log4j.properties</filename> file in the <filename>org.hibernate.eclipse/</filename> directory or JAR. This file includes a default configuration that only logs WARN and above to a set of custom appenders (PluginFileAppender and PluginLogAppender). You can change these settings to be as verbose or silent as you please. See the <ulink url="http://www.hibernate.org/5.html">Hibernate Documentation</ulink> for more information on logging categories and Log4j documentation.
+ </para>
+ <section>
+ <title>Relevant Resources Links</title>
+ <para>
+ More information on how to to configure logging via a Log4j property file can be found in the <ulink url="http://supportweb.cs.bham.ac.uk/docs/tutorials/docsystem/build/tutorials/log4j/log4j.html">Log4j documentation</ulink>.
+ </para>
+ </section>
+ </section>
+ <section id="dali_integration">
+ <title>Hibernate support for Dali plugins in Eclipse WTP</title>
+ <para>
+ Starting from version 3.0.0 Alpha1, <productname>JBoss Tools</productname> Hibernate plugins support Eclipse Dali integration, which makes it possible to use a Hibernate as a complete JPA development platform.
+ </para>
+ <section id="jpa_project_with_hibernate">
+ <title>Creating JPA project with Hibernate support</title>
+ <para>
+ When starting a new JPA project by selecting <menuchoice><guimenuitem>New</guimenuitem><guimenuitem>Other</guimenuitem><guimenuitem>JPA</guimenuitem><guimenuitem>JPA Project</guimenuitem></menuchoice> (or simply <menuchoice><guimenuitem>New</guimenuitem><guimenuitem>JPA Project</guimenuitem></menuchoice> in the <guilabel>JPA Perspective</guilabel>), the first wizard page is shown in the image below.
+ </para>
+ <figure>
+ <title>Starting JPA Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration1.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>You can select a target runtime and change the project configuration, or you can leave everything as it is.</para>
+ <para>
+ On the JPA Facet page you should choose <guilabel>Hibernate</guilabel> as a target platform. Also select the proper database connection, if it is defined, or add a new one by clicking the <guilabel>Add connection</guilabel> link.
+ </para>
+ <para>Clicking the <guibutton>Finish</guibutton> button will generate the project.</para>
+ <figure>
+ <title>Targeting at Hibernate Platform</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration2.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Note:</title>
+ <para>
+ If you choose Hibernate as a platform while creating a JPA/Dali project, a Hibernate Console Configuration for the project is created automatically when the wizard is finished. It allows all the <guilabel>Hibernate Tools</guilabel> features to be used without any additional setup.
+ </para>
+ </note>
+ </section>
+ <section id="generate_ddl_entities_with_hibernate">
+ <title>Generating DDL and Entities</title>
+ <para>
+ By enabling Hibernate platform specific features you can now generate DDL and Entities. To do that select the <menuchoice><guimenuitem>JPA Tools</guimenuitem><guimenuitem>Generate Tables from Entities/Generate Entities from Tables</guimenuitem></menuchoice> options in the context menu of your JPA project.
+ </para>
+ <figure>
+ <title>Generate DDL/Entities</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration3.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Note:</title>
+ <para>Remember to put the appropriate database driver to the classpath of your project.</para>
+ </note>
+ <para>The <guilabel>Generate Entities wizard</guilabel> will first ask you to choose the directory where all output will be written.</para>
+ <figure>
+ <title>Generate Entities Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration4.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>To generate entities you can use:</para>
+ <itemizedlist>
+ <listitem>
+ <para>A Hibernate Console Configuration (proposed by default)</para>
+ <para>
+ To select this option make sure that the <guilabel>Use Console Configuration</guilabel> checkbox is selected and select a configuration from the <guilabel>Console configurations</guilabel> list box.
+ </para>
+ <figure>
+ <title>Generate Entities Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration5.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ </itemizedlist>
+ <itemizedlist>
+ <listitem>
+ <para>Or a DTP connection directly</para>
+ <para>To select this option uncheck the <guilabel>Use Console Configuration</guilabel> option and adjust the database settings.</para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ The options you define in the <guilabel>Generate Entities Wizard</guilabel> can also be set with the <guilabel>Generate DDL wizard</guilabel>. The <guilabel>Generate DDL</guilabel> wizard also allows you automatically generate DDL for the database.
+ </para>
+ <figure>
+ <title>Generate DDL Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration6.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>In this way you can enable Hibernate runtime support in Eclipse JPA projects.</para>
+ </section>
+ <section id="hibernate_annotations_support">
+ <title>Hibernate Annotations Support</title>
+ <para>
+ Hibernate Annotations are also supported in <guilabel>Dali Java Persistence Tools</guilabel>. The following annotations are integrated with the <guilabel>JPA Details</guilabel> view:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>Id Generator annotations - <code>@GenericGenerator</code> and <code>@GeneratedValue</code>
+ </para>
+ <figure>
+ <title>@GenericGenerator support in Dali</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration7.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <figure>
+ <title>@GeneratedValue support in Dali</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration8.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>Property annotations - <code>@DiscriminatorFormula</code>, <code>@Generated</code>, <code>@Index</code>
+ </para>
+ <figure>
+ <title>@Index support in Dali</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration9.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>Mapping Queries annotations - <code>@NamedQuery</code> and <code>@NamedNativeQuery</code>
+ </para>
+ <figure>
+ <title>Add New Named Query Dialog with Hibernate Support</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration10.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <figure>
+ <title>@NamedQuery support in Dali</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration11.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>
+ Association annotations in an <property>embeddable</property> object (<code>@OneToOne</code>, <code>@ManyToOne</code>, <code>@OneToMany</code> or <code>@ManyToMany</code>)
+ </para>
+ <figure>
+ <title>Hibernate Support for Embeddable Object</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/plugins/dali_integration12.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ </itemizedlist>
+ <!-- <para>
+ More information about Hibernate Annotations can be found in the <ulink url="http://docs.jboss.org/hibernate/stable/annotations/reference/en/html/">Hibernate Annotations Reference Guide</ulink>.
+ </para> -->
+ </section>
+ <section>
+ <title>Relevant Resources Links</title>
+ <para>
+ Find more information about native Dali plugin features on the <ulink url="http://help.eclipse.org/galileo/index.jsp?nav=/8">Eclipse Documentation page</ulink>.
+ </para>
+ </section>
+ </section>
+</chapter>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/reverseengineering.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/reverseengineering.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/reverseengineering.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,847 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<chapter id="reverseengineering">
+ <title>Controlling reverse engineering</title>
+
+ <para>
+ When using the <code><jdbcconfiguration></code> tag, the Ant task will read the database metadata and then reverse engineer the database schema into a normal Hibernate Configuration. It is from this object (e.g. <code><hbm2java></code>) that other artifacts, such as <filename>.java</filename> and <filename>.hbm.xml</filename>, can be generated.
+ </para>
+
+ <para>
+ To govern this process <productname>Hibernate</productname> uses a reverse engineering strategy. A reverse engineering strategy is mainly called to provide more Java like names for tables, column and foreign keys into classes, properties and associations. It is also used to provide mappings from SQL types to <productname>Hibernate</productname> types.
+ </para>
+ <para>
+ The strategy can be customized by the user. This can be done by providing a custom reverse engineering strategy should the default strategy does not include the required functionality, or simply define a small component of the strategy and delegate the rest to the default strategy.
+ </para>
+
+ <para>
+ Further in this chapter we will discuss how you can configure the process of reverse engineering, what the default reverse engineering strategy includes, as well as some custom concepts.
+ </para>
+
+ <section>
+ <title>Default reverse engineering strategy</title>
+
+ <para>
+ The default strategy uses a collection of rules for mapping JDBC artifact names to Java artifact names. It also provide basic type mappings from JDBC types to <productname>Hibernate</productname> types. It is the default strategy that uses the <code>packagename</code> attribute to convert a table name into a fully qualified class name.
+ </para>
+ </section>
+
+ <section id="hibernaterevengxmlfile">
+ <title>hibernate.reveng.xml file</title>
+
+ <para>
+ A <filename>hibernate.reveng.xml</filename> file can provide a finer degree of control of the reverse engineering process. In this file you can specify type mappings and table filtering. This file can be created by hand (it's just basic XML) or you can use the <xref linkend="rev_xml_editor"/>, which provides a specialized editor.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>
+ Many databases have case-sensitive names, so if a table does not match, and you are sure it is not excluded by a <code><table-filter></code>, check that the case matches. Most databases stores table names in upper case.
+ </para>
+ </note>
+
+ <para>Below you can see an example of a <filename>reveng.xml</filename> file.</para>
+
+ <programlisting role="XML"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-reverse-engineering
+ SYSTEM "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd" >
+
+<hibernate-reverse-engineering>
+
+<type-mapping>
+ <!-- jdbc-type is name for java.sql.Types -->
+ <sql-type jdbc-type="VARCHAR" length='20' hibernate-type="SomeUserType" />
+ <sql-type jdbc-type="VARCHAR" length='1' hibernate-type="yes_no" />
+ <!-- length, scale and precision can be used to specify the mapping precisely -->
+ <sql-type jdbc-type="NUMERIC" precision='1' hibernate-type="boolean" />
+ <!-- the type-mappings are ordered. This mapping will be consulted last,
+ thus overridden by the previous one if precision=1 for the column -->
+ <sql-type jdbc-type="NUMERIC" hibernate-type="long" />
+</type-mapping>
+
+<!-- BIN$ is recycle bin tables in Oracle -->
+<table-filter match-name="BIN$.*" exclude="true" />
+
+<!-- Exclude DoNotWantIt from all catalogs/schemas -->
+<table-filter match-name="DoNotWantIt" exclude="true" />
+
+<!-- exclude all tables from the schema SCHEMA in catalog BAD. -->
+<table-filter match-catalog="BAD" match-schema="SCHEMA" match-name=".*" exclude="true" />
+
+<!-- table allows you to override/define how reverse engineering
+ is done for a specific table -->
+<table name="ORDERS">
+ <primary-key>
+ <!-- setting up a specific id generator for a table -->
+ <generator class="sequence">
+ <param name="table">seq_table</param>
+ </generator>
+ <key-column name="CUSTID"/>
+ </primary-key>
+ <column name="NAME" property="orderName" type="string" />
+ <!-- control many-to-one and set names for a specific named foreign key constraint -->
+ <foreign-key constraint-name="ORDER_CUST">
+ <many-to-one property="customer"/>
+ <set property="orders"/>
+ </foreign-key>
+ <!-- can also control a pure (shared pk) one-to-one -->
+ <foreign-key constraint-name="ADDRESS_PERSON">
+ <one-to-one exclude="false"/>
+ <inverse-one-to-one exclude="true"/>
+ </foreign-key>
+</table>
+
+</hibernate-reverse-engineering>]]></programlisting>
+
+
+ <section>
+ <title>Schema Selection (<schema-selection>)</title>
+
+ <para>The <code><schema-selection></code> tag is used to determine which schemas the reverse engineering will try and process.</para>
+
+ <para>
+ By default the reverse engineering will read all schemas and then use the <code><table-filter></code> tag to decide which tables are reverse engineered and which are not. This makes it easy to get started but can be inefficient on databases with many schemas.
+ </para>
+
+ <para>
+ With the <code><schema-selection></code> tag it is thus possible to limit which schemas are processed, which in turn can significantly speed-up the reverse engineering. The <code><table-filter></code> tag is still used to then decide which tables will be included and excluded.
+ </para>
+
+ <note>
+ <title>Note:</title>
+ <para>
+ If no <code><schema-selection></code> tag is specified, the reverse engineering works as if all schemas should be processed. This is equal to: <![CDATA[<schema-selection/>]]>, which in turn is equal to: <![CDATA[<schema-selection match-catalog=".*" match-schema=".*" match-table=".*"/>]]>
+ </para>
+ </note>
+
+ <section>
+ <title>Examples</title>
+
+ <para>The following will process all tables from <code>"MY_SCHEMA"</code>.</para>
+
+ <programlisting role="XML"><![CDATA[<schema-selection match-schema="MY_SCHEMA"/>]]></programlisting>
+
+ <para>
+ It is possible to have multiple <code>schema-selection</code>'s to support multi-schema reading, or to limit the processing to very specific tables. The following example processes all tables in <code>"MY_SCHEMA"</code>, a specific <code>"CITY"</code> table plus all tables that start with <code>"CODES_"</code> in <code>"COMMON_SCHEMA"</code>.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<schema-selection match-schema="MY_SCHEMA"/>
+<schema-selection match-schema="COMMON_SCHEMA" match-table="CITY"/>
+<schema-selection match-schema="COMMON_SCHEMA" match-table="CODES_.*"/>]]></programlisting>
+ </section>
+ </section>
+
+ <section id="type_map">
+ <title>Type mappings (<type-mapping>)</title>
+
+ <para>
+ The <code><type-mapping></code> section specifies how the JDBC types found in the database should be mapped to Hibernate types. e.g. <code>java.sql.Types.VARCHAR</code> with a length of 1 should be mapped to the Hibernate type <code>yes_no</code>, or <code>java.sql.Types.NUMERIC</code> should generally just be converted to the Hibernate type <code>long</code>.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<type-mapping>
+ <sql-type
+ jdbc-type="integer value or name from java.sql.Types"
+ length="a numeric value"
+ precision="a numeric value"
+ scale="a numeric value"
+ not-null="true|false"
+ hibernate-type="hibernate type name"
+ />
+</type-mapping>]]></programlisting>
+
+ <para>
+ The number of attributes specified and the sequence of the <code>sql-type</code> tags are important. This is because <productname>Hibernate</productname> will search for the most specific first, and if no specific match is found it will seek from top to bottom when trying to resolve a type mapping.
+ </para>
+
+ <section>
+ <title>Example</title>
+
+ <para>The following is an example of a type-mapping which shows the flexibility and importance of the ordering of the type mappings.</para>
+
+ <programlisting role="XML"><![CDATA[<type-mapping>
+ <sql-type jdbc-type="NUMERIC" precision="15" hibernate-type="big_decimal"/>
+ <sql-type jdbc-type="NUMERIC" not-null="true" hibernate-type="long" />
+ <sql-type jdbc-type="NUMERIC" not-null="false" hibernate-type="java.lang.Long" />
+ <sql-type jdbc-type="VARCHAR" length="1" not-null="true"
+ hibernate-type="java.lang.Character"/>
+ <sql-type jdbc-type="VARCHAR" hibernate-type="your.package.TrimStringUserType"/>
+ <sql-type jdbc-type="VARCHAR" length="1" hibernate-type="char"/>
+ <sql-type jdbc-type="VARCHAR" hibernate-type="string"/>
+</type-mapping>]]></programlisting>
+
+ <para>The following table shows how this affects an example table named <code>CUSTOMER</code>:</para>
+
+ <table frame="topbot">
+ <title>sql-type examples</title>
+
+ <tgroup cols="7">
+ <colspec colwidth="0.4*"/>
+
+ <colspec colwidth="0.4*"/>
+
+ <colspec colwidth="0.2*"/>
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="0.2*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.7*"/>
+
+ <thead>
+ <row>
+ <entry>Column</entry>
+
+ <entry>jdbc-type</entry>
+
+ <entry>length</entry>
+
+ <entry>precision</entry>
+
+ <entry>not-null</entry>
+
+ <entry>Resulting hibernate-type</entry>
+
+ <entry>Rationale</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>ID</entry>
+
+ <entry>INTEGER</entry>
+
+ <entry/>
+
+ <entry>10</entry>
+
+ <entry>true</entry>
+
+ <entry>int</entry>
+
+ <entry>Nothing is defined for INTEGER. Falling back to default behavior.</entry>
+ </row>
+
+ <row>
+ <entry>NAME</entry>
+
+ <entry>VARCHAR</entry>
+
+ <entry>30</entry>
+
+ <entry/>
+
+ <entry>false</entry>
+
+ <entry>your.package.TrimStringUserType</entry>
+
+ <entry>
+ No type-mapping matches <code>length=30</code> and <code>not-null=false</code>, but type-mapping matches the 2 mappings which only specifies <code>VARCHAR</code>. The type-mapping that comes first is chosen.
+ </entry>
+ </row>
+
+ <row>
+ <entry>INITIAL</entry>
+
+ <entry>VARCHAR</entry>
+
+ <entry>1</entry>
+
+ <entry/>
+
+ <entry>false</entry>
+
+ <entry>char</entry>
+
+ <entry>
+ Even though there is a generic match for <code>VARCHAR</code>, the more specific type-mapping for <code>VARCHAR</code> with <code>not-null="false"</code> is chosen. The first <code>VARCHAR</code> sql-type matches in length but has no value for not-null and thus is not considered.</entry>
+ </row>
+
+ <row>
+ <entry>CODE</entry>
+
+ <entry>VARCHAR</entry>
+
+ <entry>1</entry>
+
+ <entry/>
+
+ <entry>true</entry>
+
+ <entry>java.lang.Character</entry>
+
+ <entry>The most specific <code>VARCHAR</code> with <code>not-null="true"</code> is selected</entry>
+ </row>
+
+ <row>
+ <entry>SALARY</entry>
+
+ <entry>NUMERIC</entry>
+
+ <entry/>
+
+ <entry>15</entry>
+
+ <entry>false</entry>
+
+ <entry>big_decimal</entry>
+
+ <entry>There is a precise match for <code>NUMERIC</code> with precision 15</entry>
+ </row>
+
+ <row>
+ <entry>AGE</entry>
+
+ <entry>NUMERIC</entry>
+
+ <entry/>
+
+ <entry>3</entry>
+
+ <entry>false</entry>
+
+ <entry>java.lang.Long</entry>
+
+ <entry>type-mapping for <code>NUMERIC</code> with <code>not-null="false"</code></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para/>
+ </section>
+ </section>
+
+ <section>
+ <title>Table filters (<table-filter>)</title>
+
+ <para>
+ The <code><table-filter></code> tag lets you specify matching rules for performing general filtering and setup of tables, e.g. let you include or exclude specific tables based on the schema or even a specific prefix.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<table-filter
+ match-catalog="catalog_matching_rule"
+ match-schema="schema_matching_rule"
+ match-name="table_matching_rule"
+ exclude="true|false"
+ package="package.name"
+/>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Table-filter attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Default value</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><para>match-catalog</para></entry>
+
+ <entry><para>Pattern for matching catalog part of the table</para></entry>
+
+ <entry><para>.*</para></entry>
+ </row>
+
+ <row>
+ <entry><para>match-schema</para></entry>
+
+ <entry><para>Pattern for matching schema part of the table</para></entry>
+
+ <entry><para>.*</para></entry>
+ </row>
+
+ <row>
+ <entry><para>match-table</para></entry>
+
+ <entry><para>Pattern for matching table part of the table</para></entry>
+
+ <entry><para>.*</para></entry>
+ </row>
+
+ <row>
+ <entry><para>exclude </para></entry>
+
+ <entry><para>If true the table will not be part of the reverse
+ engineering</para></entry>
+
+ <entry><para>false</para></entry>
+ </row>
+
+ <row>
+ <entry><para>package</para></entry>
+
+ <entry><para>The default package name to use for classes based on tables
+ matched by this table-filter</para></entry>
+
+ <entry><para>""</para></entry>
+ </row>
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ </section>
+
+ <section id="tab_and_col">
+ <title>Specific table configuration (<table>)</title>
+
+ <para>
+ The <code><table></code> tag allows you to explicitly define how a table should be reverse engineered. It allows control over the naming of a class for the table, provides a way to specify which identifier generator should be used for the primary key and more.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<table
+ catalog="catalog_name"
+ schema="schema_name"
+ name="table_name"
+ class="ClassName"
+>
+ <primary-key.../>
+ <column.../>
+ <foreign-key.../>
+ </table>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Table attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><para>catalog</para></entry>
+
+ <entry>
+ <para>Catalog name for a table. It has to be specified if you are reverse engineering multiple catalogs or if it is not equal to hiberante.default_catalog.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>schema</para></entry>
+
+ <entry>
+ <para>
+ Schema name for a table. It has to be specified if you are reverse engineering multiple schemas or if it is not equal to hiberante.default_schema.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>name</para></entry>
+
+ <entry><para>Name for a table.</para></entry>
+
+ <entry><para>Required</para></entry>
+ </row>
+
+ <row>
+ <entry><para>class</para></entry>
+
+ <entry><para>The class name for a table. Default name is a CamelCase version of the table name.</para></entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ <section>
+ <title><primary-key></title>
+
+ <para>
+ A <code><primary-key></code> tag allows you to define a primary-key for tables that do not have one defined in the database, and more importantly it allows you to define which identifier strategy should be used (even for preexisting primary-key's).
+ </para>
+
+ <programlisting role="XML"><![CDATA[<primary-key
+ <generator class="generatorname">
+ <param name="param_name">parameter value</param>
+ </generator>
+ <key-column...>
+ </primary-key>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Primary-key attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><para>generator/class</para></entry>
+
+ <entry>
+ <para>
+ Defines which identifier generator should be used. The class name is any hibernate short hand name or fully qualified class name for an identifier strategy.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>generator/param</para></entry>
+
+ <entry><para>Allows to specify which parameter with a name and value should be passed to the identifier generator.</para></entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>key-column</para></entry>
+
+ <entry>
+ <para>
+ Specifies which column(s ) the primary-key consists of. A key-column is same as column, but does not have the exclude property.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ </section>
+
+ <section>
+ <title><column></title>
+
+ <para>
+ With a <code><column></code> tag it is possible to explicitly name the resulting property for a column, to redefine what JDBC and/or Hibernate type a column should be processed as, and to completely exclude a column from processing.
+ </para>
+
+ <programlisting role="XML"><![CDATA[<column
+ name="column_name"
+ jdbc-type="java.sql.Types type"
+ type="hibernate_type"
+ property="propertyName"
+ exclude="true|false"
+/>]]></programlisting>
+
+ <table frame="topbot">
+ <title>Column attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><para>name</para></entry>
+
+ <entry><para>Column name</para></entry>
+
+ <entry><para>Required</para></entry>
+ </row>
+
+ <row>
+ <entry><para>jdbc-type</para></entry>
+
+ <entry>
+ <para>
+ Which jdbc-type this column should be processed as. A value from <code>java.sql.Types</code>, either numerical (e.g. 93) or the constant name (e.g. <code>TIMESTAMP</code>).
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>type</para></entry>
+
+ <entry><para>Which hibernate-type to use for this specific column</para></entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+
+ <row>
+ <entry><para>property</para></entry>
+
+ <entry><para>What property name will be generated for this column</para></entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>exclude</para></entry>
+
+ <entry><para>Set to true if this column should be ignored</para></entry>
+
+ <entry><para>default: false</para></entry>
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ </section>
+
+ <section>
+ <title><foreign-key></title>
+
+ <para>
+ The <code><foreign-key></code> tag has two purposes. The first is to define foreign-keys in databases that does not support them or do not have them defined in their schema. The second is to define the name of the resulting properties (many-to-one, one-to-one and one-to-many's).
+ </para>
+
+ <programlisting role="XML"><![CDATA[<foreign-key
+ constraint-name="foreignKeyName"
+ foreign-catalog="catalogName"
+ foreign-schema="schemaName"
+ foreign-table="tableName"
+ >
+ <column-ref local-column="columnName" foreign-column="foreignColumnName"/>
+ <many-to-one
+ property="aPropertyName"
+ exclude="true|false"/>
+ <set
+ property="aCollectionName"
+ exclude="true|false"
+
+ <one-to-one
+ property="aPropertyName"
+ exclude="true|false"/>
+ <inverse-one-to-one
+ property="aPropertyName"
+ exclude="true|false"/>
+ </foreign-key>]]></programlisting>
+ <table frame="topbot">
+ <title>Foreign-key attributes</title>
+
+ <tgroup cols="3">
+
+ <colspec colwidth="0.3*"/>
+
+ <colspec colwidth="1.0*"/>
+
+ <colspec colwidth="0.3*"/>
+
+
+ <thead>
+ <row>
+ <entry>Attribute name</entry>
+
+ <entry>Definition</entry>
+
+ <entry>Attribute use</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry><para>constraint-name</para></entry>
+
+ <entry>
+ <para>
+ Name of the foreign key constraint. Important when naming many-to-one, one-to-one and set. It is the constraint-name that is used to link the processed foreign-keys with the resulting property names.
+ </para>
+ </entry>
+
+ <entry><para>Required</para></entry>
+ </row>
+
+ <row>
+ <entry><para>foreign-catalog</para></entry>
+
+ <entry><para>Name of the foreign table's catalog. (Only relevant if you want to explicitly define a foreign key).</para></entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>foreign-schema</para></entry>
+
+ <entry><para>Name of the foreign table's schema. (Only relevant if you want to explicitly define a foreign key).</para></entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+
+ <row>
+ <entry><para>foreign-table</para></entry>
+
+ <entry><para>Name of the foreign table. (Only relevant if you want to explicitly define a foreign key).</para></entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>column-ref </para></entry>
+
+ <entry>
+ <para>
+ Defines the foreign-key constraint between a local-column and foreign-column name. (Only relevant if you want to explicitly define a foreign key).
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>many-to-one</para></entry>
+
+ <entry>
+ <para>
+ Defines that a many-to-one should be created and the property attribute specifies the name of the resulting property. Exclude can be used to explicitly define that it should be created or not.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>set</para></entry>
+
+ <entry>
+ <para>
+ Defines that a set should be created based on this foreign-key and the property attribute specifies the name of the resulting (set) property. Exclude can be used to explicitly define that it should be created or not.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>one-to-one</para></entry>
+
+ <entry>
+ <para>
+ Defines that a one-to-one should be created and the property attribute specifies the name of the resulting property. Exclude can be used to explicitly define that it should be created or not.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+
+ <row>
+ <entry><para>inverse-one-to-one</para></entry>
+
+ <entry>
+ <para>
+ Defines that an inverse one-to-one should be created based on this foreign-key and the property attribute specifies the name of the resulting property. Exclude can be used to explicitly define that it should be created or not.
+ </para>
+ </entry>
+
+ <entry><para>Optional</para></entry>
+ </row>
+ </tbody>
+
+ </tgroup>
+ </table>
+
+ </section>
+ </section>
+ </section>
+
+ <section id="custom-reveng-strategy">
+ <title>Custom strategy</title>
+
+ <para>
+ It is possible to implement a user strategy. Such a strategy must implement <code>org.hibernate.cfg.reveng.ReverseEngineeringStrategy</code>. It is recommended that you use the <code>DelegatingReverseEngineeringStrategy</code> and provide a public constructor which takes another <code>ReverseEngineeringStrategy</code> as an argument. This will allow you to only implement the relevant methods and provide a fall back strategy. An example is shown below of a custom delegating strategy that converts all column names ending with <code>"PK"</code> into a property named <code>"id"</code>.
+ </para>
+
+ <programlisting role="JAVA"><![CDATA[public class ExampleStrategy extends DelegatingReverseEngineeringStrategy {
+
+ public ExampleStrategy(ReverseEngineeringStrategy delegate) {
+ super(delegate);
+ }
+
+ public String columnToPropertyName(TableIdentifier table, String column) {
+ if(column.endsWith("PK")) {
+ return "id";
+ } else {
+ return super.columnToPropertyName(table, column);
+ }
+ }
+}]]></programlisting>
+ </section>
+
+ <section>
+ <title>Custom Database Metadata</title>
+
+ <para>
+ By default the reverse engineering is performed using the JDBC database metadata API. This is done via the class <code>org.hibernate.cfg.reveng.dialect.JDBCMetaDataDialect</code>, which is an implementation of <code>org.hibernate.cfg.reveng.dialect.MetaDataDialect</code>.
+ </para>
+
+ <para>
+ The default implementation can be replaced with an alternative implementation by setting the <code>hibernatetool.metadatadialect</code> property to a fully qualified class name for a class that implements <code>JDBCMetaDataDialect</code>.
+ </para>
+
+ <para>
+ This can be used to provide database specific optimized metadata reading. If you create an optimized metadata reader for your database it will be a very welcome contribution.
+ </para>
+ </section>
+</chapter>
Added: branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/setup.xml
===================================================================
--- branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/setup.xml (rev 0)
+++ branches/jbosstools-3.3.x/hibernatetools/docs/reference/en-US/setup.xml 2012-06-18 00:40:14 UTC (rev 42017)
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<chapter id="setup">
+ <title>Download and install Hibernate Tools</title>
+ <para>
+ <productname>Hibernate Tools</productname> can be used "standalone" via Ant 1.6.x or fully integrated into an Eclipse + WTP based IDE, such as the case with <productname>JBDS/JBoss Tools</productname>, or a default Eclipse + WTP installation. The following sections describe the install steps in these environments.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para>The <productname>Hibernate Tools 3.4.0</productname> (the current release version) requires Eclipse Helios (3.6).</para>
+ </note>
+ <section>
+ <title>JBoss Tools</title>
+ <para>
+ <productname>JBoss Tools 3.4.0</productname> (the latest release) includes <productname>Hibernate Tools 3.3.0</productname> and thus no additional steps are required beyond downloading and installing <productname>JBoss Tools</productname>. If you need to update to a newer version of the <productname>Hibernate Tools</productname> just follow the instructions in <xref linkend="eclipse_ide"/>.
+ </para>
+ </section>
+ <section id="eclipse_ide">
+ <title>Eclipse IDE</title>
+ <para>
+ To install the <productname>Hibernate Tools</productname> into any <productname>Eclipse 3.6</productname> based IDE you can either use the <ulink url="http://download.jboss.org/jbosstools/updates/stable/">JBoss Tools Update Site</ulink>.
+ </para>
+ <note>
+ <title>Note:</title>
+ <para>
+ If you need more detailed instructions on plugin installation and general usage of <productname>Eclipse</productname> then check out <ulink url="https://eclipse-tutorial.dev.java.net/">https://eclipse-tutorial.dev.java.net/</ulink> and especially <ulink url="https://eclipse-tutorial.dev.java.net/visual-tutorials/updatemanager.html">https://eclipse-tutorial.dev.java.net/visual-tutorials/updatemanager.html</ulink> which covers the use of the update manager.
+ </para>
+ </note>
+ <section>
+ <title>Using Eclipse WTP</title>
+ <para>
+ The <productname>Hibernate Tools</productname> plugins currently use <property>WTP 3.x</property>, which at this time is the latest stable release from the <productname>Eclipse Webtools</productname> project.
+ </para>
+ <para>
+ Because the <productname>WTP</productname> project has not always used proper versioning with their plugins, <productname>WTP</productname> plugins may be present in your existing <productname>Eclipse</productname> directory from other <productname>Eclipse</productname> based projects that are from an earlier <productname>WTP</productname> release but has either the same version number or higher. It is thus recommended that if you have issues with features provided by <productname>WTP</productname> to install the plugins on a clean install of <productname>Eclipse</productname> to ensure there are no version collisions.
+ </para>
+ </section>
+ </section>
+ <section>
+ <title>Ant</title>
+ <para>To use the tools via <productname>Ant</productname> you need the <filename>hibernate-tools.jar</filename> file and associated libraries. The libraries are included in the distribution from the <productname>Hibernate</productname> website and the <productname>Eclipse</productname> update site. The libraries are located in the <productname>Eclipse</productname> plugins directory at <filename>/plugins/org.hibernate.eclipse.x.x.x/lib/tools/</filename>. These libraries are 100% independent from the <productname>Eclipse</productname> platform. How to use the <productname>Hibernate Tools</productname> via <productname>Ant</productname> tasks is described in <xref linkend="ant"/>.
+ </para>
+ </section>
+</chapter>
More information about the jbosstools-commits
mailing list