<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Hibernate, Relational Persistence for Idiomatic Java
  ~
  ~ License: GNU Lesser General Public License (LGPL), version 2.1 or later.
  ~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
  -->
<blueprint default-activation="eager"
           xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
        >

  <bean id="dpService" class="org.hibernate.osgitest.DataPointServiceImpl"/>
  <service ref="dpService" interface="org.hibernate.osgitest.DataPointService"/>

  <!-- This demonstrates how to register your custom implementations of Hibernate extension points. -->

  <bean id="integrator" class="org.hibernate.osgitest.TestIntegrator"/>
  <service ref="integrator" interface="org.hibernate.integrator.spi.Integrator"/>

  <bean id="strategyRegistrationProvider" class="org.hibernate.osgitest.TestStrategyRegistrationProvider"/>
  <service ref="strategyRegistrationProvider"
           interface="org.hibernate.boot.registry.selector.StrategyRegistrationProvider"/>

  <bean id="typeContributor" class="org.hibernate.osgitest.TestTypeContributor"/>
  <service ref="typeContributor" interface="org.hibernate.boot.model.TypeContributor"/>

  <!-- This bundle makes use of Karaf commands to demonstrate core persistence operations.  Feel free to remove it. -->
  <command-bundle xmlns="http://karaf.apache.org/xmlns/shell/v1.1.0">
    <command>
      <action class="org.hibernate.osgitest.command.AddCommand">
        <property name="dpService" ref="dpService"/>
      </action>
    </command>
    <command>
      <action class="org.hibernate.osgitest.command.UpdateCommand">
        <property name="dpService" ref="dpService"/>
      </action>
    </command>
    <command>
      <action class="org.hibernate.osgitest.command.GetCommand">
        <property name="dpService" ref="dpService"/>
      </action>
    </command>
    <command>
      <action class="org.hibernate.osgitest.command.LoadCommand">
        <property name="dpService" ref="dpService"/>
      </action>
    </command>
    <command>
      <action class="org.hibernate.osgitest.command.GetAllCommand">
        <property name="dpService" ref="dpService"/>
      </action>
    </command>
    <command>
      <action class="org.hibernate.osgitest.command.GetRevisionsCommand">
        <property name="dpService" ref="dpService"/>
      </action>
    </command>
    <command>
      <action class="org.hibernate.osgitest.command.DeleteAllCommand">
        <property name="dpService" ref="dpService"/>
      </action>
    </command>
  </command-bundle>
</blueprint>
