⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 syspropertymanager.java

📁 CRM源码This file describes some issues that should be implemented in future and how it should be imple
💻 JAVA
字号:
/* * Copyright 2006-2007 Queplix Corp. * * Licensed under the Queplix Public License, Version 1.1.1 (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.queplix.com/solutions/commercial-open-source/queplix-public-license/ * * 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 com.queplix.core.modules.config.utils;import com.queplix.core.modules.config.error.NoSuchPropertyException;import com.queplix.core.utils.cache.Cache;import com.queplix.core.utils.log.AbstractLogger;import com.queplix.core.utils.log.Log;/** * System Property Manager. * * @author [ALB] Baranov Andrey * @version $Revision: 1.1.1.1 $ $Date: 2005/09/12 15:30:16 $ */public final class SysPropertyManager {    // =================================================== Constants and fields    // Logger.    private static AbstractLogger logger = Log.getLog( SysPropertyManager.class );    // ========================================================= Initialization    // Private constuctor - blocks instantiation.    private SysPropertyManager() {}    // ========================================================= Public methods    /**     * Delete system property.     * @param propId property id     */    public static void deleteProperty( String propId ) {        if( logger.getLogger().isDebugEnabled() ) {            logger.DEBUG( "Try to delete system property" +                          ". Id: " + propId + "." );        }        // Delete record.        ConfigPropertyFactory.getInstance().getSysPropertyDAO().deleteProperty( propId );        // Remove from cache.        Cache cache = ConfigPropertyFactory.getInstance().getSysPropertyCache();        cache.remove( propId );    }    /**     * Create system property.     * @param propId property id     * @param value some value     */    public static void createProperty( String propId, String value ) {        if( logger.getLogger().isDebugEnabled() ) {            logger.DEBUG( "Try to create system property" +                          ". Id: " + propId +                          ". Value: " + value + "." );        }        // Insert new record.        ConfigPropertyFactory.getInstance().getSysPropertyDAO().createProperty( propId, value );        // Store in cache.        Cache cache = ConfigPropertyFactory.getInstance().getSysPropertyCache();        cache.put( propId, value );    }    /**     * Set system property.     * @param propId property id     * @param value some value     */    public static void setProperty( String propId, String value ) {        if( logger.getLogger().isDebugEnabled() ) {            logger.DEBUG( "Try to update system property" +                          ". Id: " + propId +                          ". Value: " + value + "." );        }        // Update record.        boolean areEqual = false;        Cache cache = ConfigPropertyFactory.getInstance().getSysPropertyCache();        if( cache.containsKey( propId ) ) {            String cachedValue = ( String ) cache.get( propId );            if( cachedValue != null ) {                if( cachedValue.equals( value ) ) {                    areEqual = true;                }            } else if( value == null ) {                areEqual = true;            }        }        if( !areEqual ) {            int rows = ConfigPropertyFactory.getInstance().getSysPropertyDAO().updateProperty( propId, value );            if( rows == 0 ) {                // insert record                createProperty( propId, value );            } else {                // store in cache                cache.put( propId, value );            }        }    }    /**     * Get system property.     * @param propId property id     * @return String     * @throws NoSuchPropertyException     */    public static String getProperty( String propId )        throws NoSuchPropertyException {        if( logger.getLogger().isDebugEnabled() ) {            logger.DEBUG( "Try to get system property" +                          ". Id: " + propId + "." );        }        // Try to find out in cache.        String value = null;        Cache cache = ConfigPropertyFactory.getInstance().getSysPropertyCache();        if( !cache.containsKey( propId ) ) {            // Load property from database.            value = ConfigPropertyFactory.getInstance().getSysPropertyDAO().loadProperty( propId );            // Store in cache.            cache.put( propId, value );        } else {            // Found in cache!            if( logger.getLogger().isDebugEnabled() ) {                logger.DEBUG( "Property '" + propId + "' found in cache." );            }            value = ( String ) cache.get( propId );        }        return value;    }    /**     * Flushes property from the cache.     * @param propId property id     */    public static void flushCache( String propId ) {        Cache cache = ConfigPropertyFactory.getInstance().getSysPropertyCache();        cache.remove( propId );    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -