类org.springframework.core.MethodClassKey源码实例Demo

下面列出了怎么用org.springframework.core.MethodClassKey的API类实例代码及写法,或者点击链接到github查看源代码。

@Override
public JCacheOperation<?> getCacheOperation(Method method, @Nullable Class<?> targetClass) {
	MethodClassKey cacheKey = new MethodClassKey(method, targetClass);
	Object cached = this.cache.get(cacheKey);

	if (cached != null) {
		return (cached != NULL_CACHING_ATTRIBUTE ? (JCacheOperation<?>) cached : null);
	}
	else {
		JCacheOperation<?> operation = computeCacheOperation(method, targetClass);
		if (operation != null) {
			if (logger.isDebugEnabled()) {
				logger.debug("Adding cacheable method '" + method.getName() + "' with operation: " + operation);
			}
			this.cache.put(cacheKey, operation);
		}
		else {
			this.cache.put(cacheKey, NULL_CACHING_ATTRIBUTE);
		}
		return operation;
	}
}
 
@Override
public JCacheOperation<?> getCacheOperation(Method method, @Nullable Class<?> targetClass) {
	MethodClassKey cacheKey = new MethodClassKey(method, targetClass);
	Object cached = this.cache.get(cacheKey);

	if (cached != null) {
		return (cached != NULL_CACHING_ATTRIBUTE ? (JCacheOperation<?>) cached : null);
	}
	else {
		JCacheOperation<?> operation = computeCacheOperation(method, targetClass);
		if (operation != null) {
			if (logger.isDebugEnabled()) {
				logger.debug("Adding cacheable method '" + method.getName() + "' with operation: " + operation);
			}
			this.cache.put(cacheKey, operation);
		}
		else {
			this.cache.put(cacheKey, NULL_CACHING_ATTRIBUTE);
		}
		return operation;
	}
}
 
源代码3 项目: Limiter   文件: DefaultLimitedResourceSource.java
@Override
public Collection<LimitedResource> getLimitedResource(Class<?> targetClass, Method method) {
    MethodClassKey key = new MethodClassKey(method, targetClass);
    Collection<LimitedResource> retVal = cache.get(key);
    if (retVal != null) {
        return retVal;
    }
    retVal = computeLimitedResource(method, targetClass);
    if (CollectionUtils.isEmpty(retVal)) {
        cache.put(key, NULL_CACHING_ATTRIBUTE);
        return null;
    } else {
        cache.put(key, retVal);
        return retVal;
    }

}
 
@Override
public JCacheOperation<?> getCacheOperation(Method method, Class<?> targetClass) {
	MethodClassKey cacheKey = new MethodClassKey(method, targetClass);
	Object cached = this.cache.get(cacheKey);

	if (cached != null) {
		return (cached != NULL_CACHING_ATTRIBUTE ? (JCacheOperation<?>) cached : null);
	}
	else {
		JCacheOperation<?> operation = computeCacheOperation(method, targetClass);
		if (operation != null) {
			if (logger.isDebugEnabled()) {
				logger.debug("Adding cacheable method '" + method.getName() + "' with operation: " + operation);
			}
			this.cache.put(cacheKey, operation);
		}
		else {
			this.cache.put(cacheKey, NULL_CACHING_ATTRIBUTE);
		}
		return operation;
	}
}
 
/**
 * Determine a cache key for the given method and target class.
 * <p>Must not produce same key for overloaded methods.
 * Must produce same key for different instances of the same method.
 * @param method the method (never {@code null})
 * @param targetClass the target class (may be {@code null})
 * @return the cache key (never {@code null})
 */
protected Object getCacheKey(Method method, @Nullable Class<?> targetClass) {
	return new MethodClassKey(method, targetClass);
}
 
/**
 * Determine a cache key for the given method and target class.
 * <p>Must not produce same key for overloaded methods.
 * Must produce same key for different instances of the same method.
 * @param method the method (never {@code null})
 * @param targetClass the target class (may be {@code null})
 * @return the cache key (never {@code null})
 */
protected Object getCacheKey(Method method, @Nullable Class<?> targetClass) {
	return new MethodClassKey(method, targetClass);
}
 
/**
 * Determine a cache key for the given method and target class.
 * <p>Must not produce same key for overloaded methods.
 * Must produce same key for different instances of the same method.
 * @param method the method (never {@code null})
 * @param targetClass the target class (may be {@code null})
 * @return the cache key (never {@code null})
 */
protected Object getCacheKey(Method method, @Nullable Class<?> targetClass) {
	return new MethodClassKey(method, targetClass);
}
 
/**
 * Determine a cache key for the given method and target class.
 * <p>Must not produce same key for overloaded methods.
 * Must produce same key for different instances of the same method.
 * @param method the method (never {@code null})
 * @param targetClass the target class (may be {@code null})
 * @return the cache key (never {@code null})
 */
protected Object getCacheKey(Method method, @Nullable Class<?> targetClass) {
	return new MethodClassKey(method, targetClass);
}
 
/**
 * Determine a cache key for the given method and target class.
 * <p>Must not produce same key for overloaded methods.
 * Must produce same key for different instances of the same method.
 * @param method the method (never {@code null})
 * @param targetClass the target class (may be {@code null})
 * @return the cache key (never {@code null})
 */
protected Object getCacheKey(Method method, Class<?> targetClass) {
	return new MethodClassKey(method, targetClass);
}
 
/**
 * Determine a cache key for the given method and target class.
 * <p>Must not produce same key for overloaded methods.
 * Must produce same key for different instances of the same method.
 * @param method the method (never {@code null})
 * @param targetClass the target class (may be {@code null})
 * @return the cache key (never {@code null})
 */
protected Object getCacheKey(Method method, Class<?> targetClass) {
	return new MethodClassKey(method, targetClass);
}
 
/**
 * Determine a cache key for the given method and target class.
 * <p>Must not produce same key for overloaded methods.
 * Must produce same key for different instances of the same method.
 *
 * @param method      the method (never {@code null})
 * @param targetClass the target class (may be {@code null})
 * @return the cache key (never {@code null})
 */
protected Object getCacheKey(Method method, Class<?> targetClass) {
    return new MethodClassKey(method, targetClass);
}
 
 类所在包
 类方法
 同包方法