<commit_before><?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Austrian Association for Software Tool Integration (AASTI)
    under one or more contributor license agreements. See the NOTICE file
    distributed with this work for additional information regarding copyright
    ownership. The AASTI licenses this file to you under the Apache License,
    Version 2.0 (the "License"); you may not use this file except in compliance
    with the License. You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

-->

<chapter xml:id="howto.clientProject" version="5.0" xmlns="http://docbook.org/ns/docbook"
         xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd
  http://www.w3.org/1999/xlink http://www.docbook.org/xml/5.0/xsd/xlink.xsd
  http://www.w3.org/2001/XMLSchema-instance http://www.w3.org/2001/XMLSchema-instance.xsd">

  <title>HowTo - Create a Client-Project for the OpenEngSB</title>


  <section>
    <title>Goal</title>
    <para>This tutorial describes how to setup a client project for OpenEngSB using maven archetype</para>
  </section>
  <section>
    <title>Time to Complete</title>
    <para>If you are already familiar with the OpenEngSB about 30 minutes (This includes only the setup for the
      project). If you are not familiar with the OpenEngSB please read this manual from the start or check the
      <link xlink:href="http://www.openengsb.org">homepage</link> for further information.
    </para>
  </section>
  <section>
    <title>Step 1 - Needed tools</title>
    <para>You need to have following tools to be installed</para>
    <section>
      <title>Java Development Kit 6</title>
      <para>First of all the JDK6 should be installed on the system and the JAVA_HOME variable should be set.
        (<link xlink:href="http://java.sun.com/javase/downloads">Java download</link>). Also, make sure that the
        java-command is available in the PATH-variable
      </para>
    </section>
    <section>
      <title>Maven 3</title>
      <para>You will also need Maven 3 be installed on your system.
        (<link xlink:href="http://maven.apache.org/download.html">Maven download</link>)
        Also, make sure that the maven-command is available in the PATH-variable
      </para>
    </section>
  </section>
  <section>
    <title>Step 2 - Using the archetype</title>
    <para>The OpenEngSB provides an maven archetype to create a client project. To use it go into your target directory
      and type in a shell:
    </para>
    <command>mvn openengsb:genClientProjectRoot</command>
    <para>
      The script generates the result in the directory from where it was started
    </para>
    <para>You will be asked to fill out following values (if no input is provided the default value is kept):</para>
    <programlisting>
      Project Group Id [org.openengsb.client-project]:
      Project Artifact Id [openengsb-client-project]:
      Project Name [Client-Poject]:
      Project Version [1.0.0-SNAPSHOT]:
      Project Description [This is a client project for the OpenEngSB]:
      Project Url [http://www.openenbsb.org]:
      OpenEngSB version [1.2.0-SNAPSHOT]:
      OpenEngSB maven plugin Version [1.4.0-SNAPSHOT]:
      Plugin Assembly version [2.2-beta-5]:</programlisting>
    <para>You will be asked what the groupId, artifactId and a name of your client project should look like.
      You can also specify the OpenEngSB version you want to use, but it is recommended to use an up-to-date version.
      To check the current OpenEngSB version have a look at the
      <link xlink:href="http://www.openengsb.org/downloads.html">Download section</link>.
      It asks you to confirm the configuration and will create the project.
    </para>
  </section>
  <section>
    <title>Step 3 - The result</title>
    <para>If everything worked as expected you will get a client project having following structure:</para>
    <programlisting>
.
`-- openengsb-client-project
      |-- assembly
      | |-- pom.xml
      |     `-- src
      |     `-- main
      | |-- descriptors
      | |   `-- bin.xml
      |     `-- filtered-resources
      | |-- etc
      | |   `-- org.apache.karaf.features.cfg
      | |-- features.xml
      |     `-- README.txt
      |-- core
      |   `-- pom.xml
      |-- docs
      | |-- homepage
      | | |-- pom.xml
      | |     `-- src
      | |     `-- site
      | |     `-- ...
      | |-- manual
      | | |-- pom.xml
      | |     `-- src
      | |     `-- ...
      |   `-- pom.xml
      |-- LICENSE
      |-- poms
      | |-- compiled
      | |   `-- pom.xml
      | |-- nonosgi
      | |   `-- pom.xml
      | |-- pom.xml
      |     `-- wrapped
      |     `-- pom.xml
      |-- pom.xml
      `-- README.md</programlisting>
    <para>You can find further information about these modules in the
      <link xlink:href="http://www.openengsb.org/manual/index.html">OpenEngSB-Manual</link>
    </para>
  </section>
  <section>
    <title>Step 4 - Install features</title>
    <para>To install features to the project have a look at the file org.apache.karaf.features.cfg in
      assembly/src/main/filtered-resource/etc. Here you can define features to be registered by default or which feature
      should be installed on startup.
      To install your own features see the file features.xml in assembly/src/main/filtered-resource. E.G.: You want to
      add a module called clientproject-ui the core features add this to the features.xml
    </para>
    <programlisting>
      <bundle>mvn:org.openengsb.clientproject.ui/clientproject-ui-web$\{project.version\}/war</bundle></programlisting>
  </section>
  <section>
    <title>Step 5 - Start the Client-Project</title>
    <para>To start the client-project, go to the command-window and type</para>
    <programlisting>mvn clean install openengsb:provision</programlisting>
    <para>Now you can enter "list" into the karaf console to check what features are installed and running</para>
  </section>
  <section>
    <title>Step 6 - Shutdown</title>
    <para>To shutdown, go to the command-window and type "shutdown" or press "Ctrl+D"</para>
  </section>

</chapter>

<commit_msg>[OPENENGSB-2526] Corrected minor missing of cdata<commit_after><?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Austrian Association for Software Tool Integration (AASTI)
    under one or more contributor license agreements. See the NOTICE file
    distributed with this work for additional information regarding copyright
    ownership. The AASTI licenses this file to you under the Apache License,
    Version 2.0 (the "License"); you may not use this file except in compliance
    with the License. You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

-->

<chapter xml:id="howto.clientProject" version="5.0" xmlns="http://docbook.org/ns/docbook"
         xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd
  http://www.w3.org/1999/xlink http://www.docbook.org/xml/5.0/xsd/xlink.xsd
  http://www.w3.org/2001/XMLSchema-instance http://www.w3.org/2001/XMLSchema-instance.xsd">

  <title>HowTo - Create a Client-Project for the OpenEngSB</title>


  <section>
    <title>Goal</title>
    <para>This tutorial describes how to setup a client project for OpenEngSB using maven archetype</para>
  </section>
  <section>
    <title>Time to Complete</title>
    <para>If you are already familiar with the OpenEngSB about 30 minutes (This includes only the setup for the
      project). If you are not familiar with the OpenEngSB please read this manual from the start or check the
      <link xlink:href="http://www.openengsb.org">homepage</link> for further information.
    </para>
  </section>
  <section>
    <title>Step 1 - Needed tools</title>
    <para>You need to have following tools to be installed</para>
    <section>
      <title>Java Development Kit 6</title>
      <para>First of all the JDK6 should be installed on the system and the JAVA_HOME variable should be set.
        (<link xlink:href="http://java.sun.com/javase/downloads">Java download</link>). Also, make sure that the
        java-command is available in the PATH-variable
      </para>
    </section>
    <section>
      <title>Maven 3</title>
      <para>You will also need Maven 3 be installed on your system.
        (<link xlink:href="http://maven.apache.org/download.html">Maven download</link>)
        Also, make sure that the maven-command is available in the PATH-variable
      </para>
    </section>
  </section>
  <section>
    <title>Step 2 - Using the archetype</title>
    <para>The OpenEngSB provides an maven archetype to create a client project. To use it go into your target directory
      and type in a shell:
    </para>
    <command>mvn openengsb:genClientProjectRoot</command>
    <para>
      The script generates the result in the directory from where it was started
    </para>
    <para>You will be asked to fill out following values (if no input is provided the default value is kept):</para>
    <programlisting>
      Project Group Id [org.openengsb.client-project]:
      Project Artifact Id [openengsb-client-project]:
      Project Name [Client-Poject]:
      Project Version [1.0.0-SNAPSHOT]:
      Project Description [This is a client project for the OpenEngSB]:
      Project Url [http://www.openenbsb.org]:
      OpenEngSB version [1.2.0-SNAPSHOT]:
      OpenEngSB maven plugin Version [1.4.0-SNAPSHOT]:
      Plugin Assembly version [2.2-beta-5]:</programlisting>
    <para>You will be asked what the groupId, artifactId and a name of your client project should look like.
      You can also specify the OpenEngSB version you want to use, but it is recommended to use an up-to-date version.
      To check the current OpenEngSB version have a look at the
      <link xlink:href="http://www.openengsb.org/downloads.html">Download section</link>.
      It asks you to confirm the configuration and will create the project.
    </para>
  </section>
  <section>
    <title>Step 3 - The result</title>
    <para>If everything worked as expected you will get a client project having following structure:</para>
    <programlisting>
.
`-- openengsb-client-project
      |-- assembly
      | |-- pom.xml
      |     `-- src
      |     `-- main
      | |-- descriptors
      | |   `-- bin.xml
      |     `-- filtered-resources
      | |-- etc
      | |   `-- org.apache.karaf.features.cfg
      | |-- features.xml
      |     `-- README.txt
      |-- core
      |   `-- pom.xml
      |-- docs
      | |-- homepage
      | | |-- pom.xml
      | |     `-- src
      | |     `-- site
      | |     `-- ...
      | |-- manual
      | | |-- pom.xml
      | |     `-- src
      | |     `-- ...
      |   `-- pom.xml
      |-- LICENSE
      |-- poms
      | |-- compiled
      | |   `-- pom.xml
      | |-- nonosgi
      | |   `-- pom.xml
      | |-- pom.xml
      |     `-- wrapped
      |     `-- pom.xml
      |-- pom.xml
      `-- README.md</programlisting>
    <para>You can find further information about these modules in the
      <link xlink:href="http://www.openengsb.org/manual/index.html">OpenEngSB-Manual</link>
    </para>
  </section>
  <section>
    <title>Step 4 - Install features</title>
    <para>To install features to the project have a look at the file org.apache.karaf.features.cfg in
      assembly/src/main/filtered-resource/etc. Here you can define features to be registered by default or which feature
      should be installed on startup.
      To install your own features see the file features.xml in assembly/src/main/filtered-resource. E.G.: You want to
      add a module called clientproject-ui the core features add this to the features.xml
    </para>
    <programlisting>
      <![CDATA[<bundle>mvn:org.openengsb.clientproject.ui/clientproject-ui-web$\{project.version\}/war</bundle>]]></programlisting>
  </section>
  <section>
    <title>Step 5 - Start the Client-Project</title>
    <para>To start the client-project, go to the command-window and type</para>
    <programlisting>mvn clean install openengsb:provision</programlisting>
    <para>Now you can enter "list" into the karaf console to check what features are installed and running</para>
  </section>
  <section>
    <title>Step 6 - Shutdown</title>
    <para>To shutdown, go to the command-window and type "shutdown" or press "Ctrl+D"</para>
  </section>

</chapter>


{'fraction_non_alphanumeric': 0.11407185628742515, 'fraction_numerical': 0.009580838323353293, 'mean_word_length': 2.6655692729766804, 'pattern_counts': {'":': 0, '<': 200, '<?xml version=': 2, '>': 200, 'https://': 0, 'lorem ipsum': 0, 'www.': 24, 'xml': 42}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 14, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3872123', 'n_tokens_mistral': 4063, 'n_tokens_neox': 3923, 'n_words': 1311}