com.dianping.cache.service.CacheConfigurationService.java Source code

Java tutorial

Introduction

Here is the source code for com.dianping.cache.service.CacheConfigurationService.java

Source

/**
 * Project: cache-server
 * 
 * File Created at 2010-10-15
 * $Id$
 * 
 * Copyright 2010 Dianping.com Corporation Limited.
 * All rights reserved.
 *
 * This software is the confidential and proprietary information of
 * Dianping Company. ("Confidential Information").  You shall not
 * disclose such Confidential Information and shall use it only in
 * accordance with the terms of the license agreement you entered into
 * with Dianping.com.
 */
package com.dianping.cache.service;

import java.util.List;

import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import com.dianping.avatar.exception.DuplicatedIdentityException;
import com.dianping.cache.entity.CacheConfiguration;

/**
 * CacheKeyConfigurationService
 * @author danson.liu
 *
 */
@Transactional
public interface CacheConfigurationService {

    /**
     * retrieve all configurations
     * @return
     */
    List<CacheConfiguration> findAll();

    CacheConfiguration find(String key);

    /**
     * ?Java
     * @param category
     */
    void clearByCategory(String category);

    /**
     * ?Java
     * @param category
     * @param serverOrGroup
     */
    void clearByCategory(String category, String serverOrGroup);

    /**
     * ??.net
     * @param category
     */
    void clearByCategoryBothSide(String category);

    /**
     * JAVA(??.net?.net????)
     * @param cacheType
     * @param key
     */
    void clearByKey(String cacheType, String key);

    /**
     * ??APP?????.net(category+params)
     * @param cacheType
     * @param key
     * @param category
     * @param params
     */
    @Transactional(propagation = Propagation.SUPPORTS)
    void clearByKeyBothSide(String cacheType, String key, String category, List<Object> params);

    CacheConfiguration create(CacheConfiguration config) throws DuplicatedIdentityException;

    CacheConfiguration update(CacheConfiguration config);

    void delete(String key);

    void incVersion(String category);

    void pushCategoryConfig(String category, String serverOrGroup);

}