blob: 6fd0f4c37dcd9f24833bc93c39e1fe0cf2a68b61 [file] [log] [blame]
/*
* Copyright (c) 2010, 2018 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* This Source Code may also be made available under the following Secondary
* Licenses when the conditions for such availability set forth in the
* Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
* version 2 with the GNU Classpath Exception, which is available at
* https://www.gnu.org/software/classpath/license.html.
*
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
*/
package test.beans;
import jakarta.enterprise.context.RequestScoped;
import jakarta.enterprise.inject.Disposes;
import jakarta.enterprise.inject.Produces;
public class BeanSetup {
public static boolean disposeCalledForPreferred = false;
public static String disposeCalledForTestQualifierError = "";
@RequestScoped
@Produces
@Preferred
public TestRequestScopedBean get(TestRequestScopedBean trs) {
return trs;
}
void dispose(@Disposes @Preferred TestRequestScopedBean trs) {
System.out
.println("Dispose method in BeanSetup for Preferred called");
disposeCalledForPreferred = true;
}
@RequestScoped
@Produces
@TestQualifier
public TestRequestScopedBean getTestQualifier(TestRequestScopedBean trs) {
return trs;
}
//test injection of TestBean in this disposer method
void disposeTestQualifier(
@Disposes @TestQualifier TestRequestScopedBean trs, TestBean tb) {
System.out
.println("Dispose method in BeanSetup for testQualifier called");
if (tb != null) {
disposeCalledForTestQualifierError = "dispose method for testqualifier " +
"called without injecting TestBean";
}
}
}