/*
* Copyright 2004-2012 the Seasar Foundation and the Others.
*
* 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 org.seasar.mayaa.impl.provider;
import org.seasar.mayaa.builder.PathAdjuster;
import org.seasar.mayaa.builder.SpecificationBuilder;
import org.seasar.mayaa.builder.TemplateBuilder;
import org.seasar.mayaa.builder.library.LibraryManager;
import org.seasar.mayaa.builder.library.TemplateAttributeReader;
import org.seasar.mayaa.cycle.script.ScriptEnvironment;
import org.seasar.mayaa.engine.Engine;
import org.seasar.mayaa.engine.specification.ParentSpecificationResolver;
import org.seasar.mayaa.impl.CONST_IMPL;
import org.seasar.mayaa.impl.ParameterAwareImpl;
import org.seasar.mayaa.provider.ServiceProvider;
/**
* @author Masataka Kurihara (Gluegent, Inc.)
*/
public class ServiceProviderImpl extends ParameterAwareImpl
implements ServiceProvider, CONST_IMPL {
private static final long serialVersionUID = -8659297907641816962L;
private Engine _engine;
private ScriptEnvironment _scriptEnvironment;
private LibraryManager _libraryManager;
private SpecificationBuilder _specificationBuilder;
private TemplateBuilder _templateBuilder;
private PathAdjuster _pathAdjuster;
private TemplateAttributeReader _templateAttributeReader;
private ParentSpecificationResolver _parentSpecificationResolver;
public void setEngine(Engine engine) {
if (engine == null) {
throw new IllegalArgumentException();
}
_engine = engine;
}
public Engine getEngine() {
if (_engine == null) {
throw new IllegalStateException();
}
return _engine;
}
public void setScriptEnvironment(ScriptEnvironment scriptEnvironment) {
if (scriptEnvironment == null) {
throw new IllegalArgumentException();
}
_scriptEnvironment = scriptEnvironment;
}
public ScriptEnvironment getScriptEnvironment() {
if (_scriptEnvironment == null) {
throw new IllegalStateException();
}
return _scriptEnvironment;
}
public void setLibraryManager(LibraryManager libraryManager) {
if (libraryManager == null) {
throw new IllegalArgumentException();
}
_libraryManager = libraryManager;
}
public LibraryManager getLibraryManager() {
if (_libraryManager == null) {
throw new IllegalStateException();
}
return _libraryManager;
}
public void setSpecificationBuilder(
SpecificationBuilder specificationBuilder) {
if (specificationBuilder == null) {
throw new IllegalArgumentException();
}
_specificationBuilder = specificationBuilder;
}
public SpecificationBuilder getSpecificationBuilder() {
if (_specificationBuilder == null) {
throw new IllegalStateException();
}
return _specificationBuilder;
}
public void setTemplateBuilder(TemplateBuilder templateBuilder) {
if (templateBuilder == null) {
throw new IllegalArgumentException();
}
_templateBuilder = templateBuilder;
}
public TemplateBuilder getTemplateBuilder() {
if (_templateBuilder == null) {
throw new IllegalStateException();
}
return _templateBuilder;
}
public void setPathAdjuster(PathAdjuster pathAdjuster) {
if (pathAdjuster == null) {
throw new IllegalArgumentException();
}
_pathAdjuster = pathAdjuster;
}
public PathAdjuster getPathAdjuster() {
if (_pathAdjuster == null) {
throw new IllegalStateException();
}
return _pathAdjuster;
}
public void setTemplateAttributeReader(
TemplateAttributeReader templateAttributeReader) {
if (templateAttributeReader == null) {
throw new IllegalArgumentException();
}
_templateAttributeReader = templateAttributeReader;
}
public TemplateAttributeReader getTemplateAttributeReader() {
if (_templateAttributeReader == null) {
throw new IllegalStateException();
}
return _templateAttributeReader;
}
public void setParentSpecificationResolver(ParentSpecificationResolver parentSpecificationResolver) {
if (parentSpecificationResolver == null) {
throw new IllegalStateException();
}
_parentSpecificationResolver = parentSpecificationResolver;
}
public ParentSpecificationResolver getParentSpecificationResolver() {
if (_parentSpecificationResolver == null) {
throw new IllegalStateException();
}
return _parentSpecificationResolver;
}
}