 ejb-new-bean --named ItemService ;
 ejb-new-bean --named PurchaseOrderService ;
 ejb-new-bean --named OrderLineService ;
-java-new-class --named InventoryService --targetPackage org.jboss.forge.hol.petstore.service ;
-java-new-class --named ShippingService --targetPackage org.jboss.forge.hol.petstore.service ;
-java-new-class --named StatisticService --targetPackage org.jboss.forge.hol.petstore.service ;
-java-new-interface --named ComputablePurchaseOrder --targetPackage org.jboss.forge.hol.petstore.service ;
-cdi-new-decorator --named PurchaseOrderDecorator --delegate org.jboss.forge.hol.petstore.service.ComputablePurchaseOrder --targetPackage org.jboss.forge.hol.petstore.service ;
+java-new-class --named InventoryService --targetPackage ~.service ;
+java-new-class --named ShippingService --targetPackage ~.service ;
+java-new-class --named StatisticService --targetPackage ~.service ;
+java-new-interface --named ComputablePurchaseOrder --targetPackage ~.service ;
+cdi-new-decorator --named PurchaseOrderDecorator --delegate org.jboss.forge.hol.petstore.service.ComputablePurchaseOrder --targetPackage ~.service ;
 
 
 


#  FacesContext producer
#  ############
java-new-class --named FacesProducer --targetPackage org.jboss.forge.hol.petstore.view.util ;
java-new-field --named facesContext --type javax.faces.context.FacesContext --generateGetter=false --generateSetter=false --updateToString=false ;
java-add-annotation --annotation javax.enterprise.inject.Produces --onProperty facesContext ;

#  Exception
#  ############
cdi-new-interceptor-binding --named CatchException --targetPackage org.jboss.forge.hol.petstore.view.util ;
cdi-new-interceptor --named ExceptionInterceptor --interceptorBinding org.jboss.forge.hol.petstore.view.util.CatchException  --targetPackage org.jboss.forge.hol.petstore.view.util ;
java-new-field --named logger --type org.apache.logging.log4j.Logger --generateGetter=false --generateSetter=false --updateToString=false ;



#  Creates utility classes  #
#  #######################  #

java-new-exception --named ValidationException --targetPackage ~.exceptions ;
java-new-class --named LoginContextProducer --targetPackage ~.security ;
java-new-class --named SimpleCallbackHandler --targetPackage ~.security ;
java-new-class --named SimpleLoginModule --targetPackage ~.security ;

#  Config producer
#  ############
cdi-new-qualifier --named ConfigProperty --targetPackage ~.util ;
java-new-class --named ConfigPropertyProducer --targetPackage ~.util ;

#  DatabaseProducer
#  ############
java-new-class --named DatabaseProducer --targetPackage ~.util ;
java-new-field --named em --type javax.persistence.EntityManager --generateGetter=false --generateSetter=false --updateToString=false ;
java-add-annotation --annotation javax.enterprise.inject.Produces --onProperty em ;
java-add-annotation --annotation javax.persistence.PersistenceContext --onProperty em ;

#  Logging Interceptor
#  ############
cdi-new-interceptor-binding --named Loggable --targetPackage ~.util ;
cdi-new-interceptor --named LoggingInterceptor --interceptorBinding org.jboss.forge.hol.petstore.util.Loggable --targetPackage ~.util ;
java-new-field --named logger --type org.apache.logging.log4j.Logger --generateGetter=false --generateSetter=false --updateToString=false --updateToString=false ;

#  Logging Producer
#  ############
java-new-class --named LoggingProducer --targetPackage ~.util ;

#  Number producer
#  ############
cdi-new-qualifier --named Vat --targetPackage ~.util ;
cdi-new-qualifier --named Discount --targetPackage ~.util ;
java-new-class --named NumberProducer --targetPackage ~.util ;

java-new-field --named vatRate --type java.lang.Float --generateGetter=false --generateSetter=false --updateToString=false ;
java-add-annotation --annotation javax.enterprise.inject.Produces --onProperty vatRate ;
