当前位置: 首页>>代码示例>>Java>>正文


Java CacheControl.setProxyRevalidate方法代码示例

本文整理汇总了Java中javax.ws.rs.core.CacheControl.setProxyRevalidate方法的典型用法代码示例。如果您正苦于以下问题:Java CacheControl.setProxyRevalidate方法的具体用法?Java CacheControl.setProxyRevalidate怎么用?Java CacheControl.setProxyRevalidate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在javax.ws.rs.core.CacheControl的用法示例。


在下文中一共展示了CacheControl.setProxyRevalidate方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: createCacheControl

import javax.ws.rs.core.CacheControl; //导入方法依赖的package包/类
/**
 * Converts a {@code Cache-Control} annotation to a {@code Cache-Control}
 * Jersey API object.
 *
 * @param annotation the annotation
 *
 * @return the Jersey API object
 *
 * @see javax.ws.rs.core.CacheControl
 * @see com.github.autermann.jersey.cache.CacheControl
 */
private CacheControl createCacheControl(
        com.github.autermann.jersey.cache.CacheControl annotation) {
    CacheControl cacheControl = new CacheControl();
    cacheControl.setPrivate(annotation._private() ||
                            annotation.privateFields().length > 0);
    cacheControl.getPrivateFields()
            .addAll(Arrays.asList(annotation.privateFields()));
    cacheControl.setMustRevalidate(annotation.mustRevalidate());
    cacheControl.setNoCache(annotation.noCache() ||
                            annotation.noCacheFields().length > 0);
    cacheControl.getNoCacheFields()
            .addAll(Arrays.asList(annotation.noCacheFields()));
    cacheControl.setNoStore(annotation.noStore());
    cacheControl.setNoTransform(annotation.noTransform());
    cacheControl.setProxyRevalidate(annotation.proxyRevalidate());
    cacheControl.setMaxAge(annotation.maxAge());
    cacheControl.setSMaxAge(annotation.sMaxAge());
    for (CacheControlExtension e : annotation.extensions()) {
        cacheControl.getCacheExtension().put(e.key(), e.value());
    }
    return cacheControl;
}
 
开发者ID:autermann,项目名称:jersey-cache-control,代码行数:34,代码来源:CacheControlFilterFactory.java

示例2: fromString

import javax.ws.rs.core.CacheControl; //导入方法依赖的package包/类
@Override
public CacheControl fromString(final String value) {
    if (value == null) {
        return null;
    }

    final CacheControl result = new CacheControl();
    result.setPrivate(true);
    result.setNoTransform(false);

    for (final String directive : value.split(",\\s+")) {
        if (directive.startsWith("max-age=")) {
            result.setMaxAge(Integer.parseInt(directive.split("=")[1]));
        } else if (directive.equals("must-revalidate")) {
            result.setMustRevalidate(true);
        } else if (directive.equals("no-cache")) {
            result.setNoCache(true);
        } else if (directive.equals("no-store")) {
            result.setNoStore(true);
        } else if (directive.equalsIgnoreCase("no-transform")) {
            result.setNoTransform(true);
        } else if (directive.equals("private")) {
            result.setPrivate(true);
        } else if (directive.equals("proxy-revalidate")) {
            result.setProxyRevalidate(true);
        } else if (directive.equals("public")) {
            result.setPrivate(false);
        } else if (directive.startsWith("s-maxage=")) {
            result.setSMaxAge(Integer.parseInt(directive.split("=")[1]));
        }
    }

    return result;
}
 
开发者ID:minijax,项目名称:minijax,代码行数:35,代码来源:MinijaxCacheControlDelegate.java

示例3: testSerializeFull

import javax.ws.rs.core.CacheControl; //导入方法依赖的package包/类
@Test
public void testSerializeFull() {
    final CacheControl c = new CacheControl();
    c.setMaxAge(100);
    c.setMustRevalidate(true);
    c.setNoCache(true);
    c.setNoStore(true);
    c.setNoTransform(false);
    c.setPrivate(true);
    c.setProxyRevalidate(true);
    c.setSMaxAge(200);
    assertEquals(
            "private, max-age=100, s-maxage=200, must-revalidate, no-cache, no-store, proxy-revalidate",
            d.toString(c));
}
 
开发者ID:minijax,项目名称:minijax,代码行数:16,代码来源:CacheControlDelegateTest.java

示例4: createCacheControl

import javax.ws.rs.core.CacheControl; //导入方法依赖的package包/类
private static CacheControl createCacheControl(Cacheable cacheable) {
    CacheControl cacheControl = new CacheControl();
    cacheControl.setMaxAge(cacheable.maxAge());
    cacheControl.setMustRevalidate(cacheable.mustRevalidate());
    cacheControl.setNoCache(cacheable.noCache());
    cacheControl.setNoStore(cacheable.noStore());
    cacheControl.setNoTransform(cacheable.noTransform());
    cacheControl.setPrivate(cacheable.privateFlag());
    cacheControl.setProxyRevalidate(cacheable.proxyRevalidate());
    cacheControl.setSMaxAge(cacheable.sMaxAge());
    cacheControl.getNoCacheFields().addAll(Arrays.asList(cacheable.noCacheFields()));
    cacheControl.getPrivateFields().addAll(Arrays.asList(cacheable.privateFields()));
    return cacheControl;
}
 
开发者ID:Microbule,项目名称:microbule,代码行数:15,代码来源:ContainerCacheFilter.java

示例5: buildCacheControl

import javax.ws.rs.core.CacheControl; //导入方法依赖的package包/类
public CacheControl buildCacheControl() {
    CacheControl cacheControl = new CacheControl();
    cacheControl.setNoTransform(false); // Default is true

    if (_maxAge.isPresent()) {
        cacheControl.setMaxAge((int) _maxAge.get().toSeconds());
    }

    if (_sharedMaxAge.isPresent()) {
        cacheControl.setSMaxAge((int) _maxAge.get().toSeconds());
    }

    if (_privateFields.size() > 0) {
        cacheControl.setPrivate(true);
        cacheControl.getPrivateFields().addAll(_privateFields);
    }

    if (_noCacheFields.size() > 0) {
        cacheControl.setNoCache(true);
        cacheControl.getNoCacheFields().addAll(_noCacheFields);
    }

    for (CacheControlFlag flag : _flags) {
        switch (flag) {
            case NO_CACHE:
                cacheControl.setNoCache(true);
                break;

            case NO_STORE:
                cacheControl.setNoStore(true);
                break;

            case MUST_REVALIDATE:
                cacheControl.setMustRevalidate(true);
                break;

            case PROXY_REVALIDATE:
                cacheControl.setProxyRevalidate(true);
                break;

            case NO_TRANSFORM:
                cacheControl.setNoTransform(true);
                break;

            case PRIVATE:
                cacheControl.setPrivate(true);
                break;

            case PUBLIC:
                // public is not directly supported by the CacheControl object, so use extension map
                cacheControl.getCacheExtension().put("public", "");
                break;

            default:
                checkState(false, "Unhandled cache control flag: " + flag);
                break;
        }
    }

    // Although the docs don't state it explicitly, both null and empty string get converted to a bare directive
    // for cache extensions.
    cacheControl.getCacheExtension().putAll(_cacheExtensions);
    return cacheControl;
}
 
开发者ID:bazaarvoice,项目名称:dropwizard-caching-bundle,代码行数:65,代码来源:CacheControlConfigurationItem.java


注:本文中的javax.ws.rs.core.CacheControl.setProxyRevalidate方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。