Mercurial > lada > lada-server
comparison src/main/java/de/intevation/utils/Resources.java @ 10:eb093385ff7e
Added Resources.java. This file is important as it make the EntitManager
available through @Inject in other classes.
author | Torsten Irländer <torsten.irlaender@intevation.de> |
---|---|
date | Thu, 18 Apr 2013 16:03:10 +0200 |
parents | |
children | ad22a59aa5d7 |
comparison
equal
deleted
inserted
replaced
9:02093e21ec25 | 10:eb093385ff7e |
---|---|
1 /* | |
2 * JBoss, Home of Professional Open Source | |
3 * Copyright 2012, Red Hat, Inc. and/or its affiliates, and individual | |
4 * contributors by the @authors tag. See the copyright.txt in the | |
5 * distribution for a full listing of individual contributors. | |
6 * | |
7 * Licensed under the Apache License, Version 2.0 (the "License"); | |
8 * you may not use this file except in compliance with the License. | |
9 * You may obtain a copy of the License at | |
10 * http://www.apache.org/licenses/LICENSE-2.0 | |
11 * Unless required by applicable law or agreed to in writing, software | |
12 * distributed under the License is distributed on an "AS IS" BASIS, | |
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
14 * See the License for the specific language governing permissions and | |
15 * limitations under the License. | |
16 */ | |
17 package org.jboss.as.quickstarts.kitchensink.util; | |
18 | |
19 import java.util.logging.Logger; | |
20 | |
21 import javax.enterprise.context.RequestScoped; | |
22 import javax.enterprise.inject.Produces; | |
23 import javax.enterprise.inject.spi.InjectionPoint; | |
24 import javax.faces.context.FacesContext; | |
25 import javax.persistence.EntityManager; | |
26 import javax.persistence.PersistenceContext; | |
27 | |
28 /** | |
29 * This class uses CDI to alias Java EE resources, such as the persistence context, to CDI beans | |
30 * | |
31 * <p> | |
32 * Example injection on a managed bean field: | |
33 * </p> | |
34 * | |
35 * <pre> | |
36 * @Inject | |
37 * private EntityManager em; | |
38 * </pre> | |
39 */ | |
40 public class Resources { | |
41 // use @SuppressWarnings to tell IDE to ignore warnings about field not being referenced directly | |
42 @SuppressWarnings("unused") | |
43 @Produces | |
44 @PersistenceContext | |
45 private EntityManager em; | |
46 | |
47 @Produces | |
48 public Logger produceLog(InjectionPoint injectionPoint) { | |
49 return Logger.getLogger(injectionPoint.getMember().getDeclaringClass().getName()); | |
50 } | |
51 | |
52 @Produces | |
53 @RequestScoped | |
54 public FacesContext produceFacesContext() { | |
55 return FacesContext.getCurrentInstance(); | |
56 } | |
57 | |
58 } |