![JAR search and dependency download from the Maven repository](/logo.png)
science.raketen.voodoo.context.singleton.SingletonContext Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of VoodooDI Show documentation
Show all versions of VoodooDI Show documentation
Voodoo DI - educational JSR-330 implementation.
The newest version!
/*
* Copyright 2016 Stephan Knitelius .
*
* Licensed 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.
*/
package science.raketen.voodoo.context.singleton;
import javax.inject.Singleton;
import science.raketen.voodoo.context.Context;
import science.raketen.voodoo.context.ContextualType;
/**
*
* @author Stephan Knitelius {@literal }
*/
public class SingletonContext extends Context {
private static final Class SCOPE_ANNOTATION = Singleton.class;
@Override
public Class getContextAnnotation() {
return SCOPE_ANNOTATION;
}
@Override
protected ContextualType buildContextualType(Class type) {
//@Singleton is a standard JSR-330 annotation, some classes in Google Guice
//that do not have a default constructor are annotated with @Singelton.
if (type.getPackage().getName().startsWith("com.google.")) {
return null;
}
return new SingletonContextualType(type);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy