/* * Copyright (c) 2005-2011 Grameen Foundation USA * All rights reserved. * * 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. * * See also http://www.apache.org/licenses/LICENSE-2.0.html for an * explanation of the license and how it is applied */ package org.mifos.framework.image.service; import org.mifos.config.business.MifosConfigurationManager; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class ClientPhotoServiceConfiguration { private static final String IMAGESTORE_CONFIG_KEY = "GeneralConfig.ImageStorageType"; private static final String DB_CONFIG = "database"; private ClientPhotoService clientPhotoService; @Bean(name="clientPhotoService") public ClientPhotoService getClientPhotoService() { return this.clientPhotoService; } public ClientPhotoServiceConfiguration() { final MifosConfigurationManager configuration = MifosConfigurationManager.getInstance(); final String imageStorageConfig = configuration.getString(IMAGESTORE_CONFIG_KEY); if (imageStorageConfig != null && imageStorageConfig.equals(DB_CONFIG)) { this.clientPhotoService = new ClientPhotoServiceDatabase(); } else { this.clientPhotoService = new ClientPhotoServiceFileSystem(); } } }