• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java CacheDirective类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.restlet.data.CacheDirective的典型用法代码示例。如果您正苦于以下问题:Java CacheDirective类的具体用法?Java CacheDirective怎么用?Java CacheDirective使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



CacheDirective类属于org.restlet.data包,在下文中一共展示了CacheDirective类的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: configureRestForm

import org.restlet.data.CacheDirective; //导入依赖的package包/类
/**
 * Configures REST HTTP Request Forms.
 * 
 * @param message the HTTP message to setup
 * @return the message configured HTTP headers.
 */
@SuppressWarnings("unchecked")
public static Series<Header> configureRestForm(Message message) {
    ConcurrentMap<String, Object> attrs = message.getAttributes();
    Series<Header> headers = (Series<Header>) attrs.get(HEADERS_KEY);

    if (headers == null) {
        headers = new Series<Header>(Header.class);
        Series<Header> prev = (Series<Header>) attrs.putIfAbsent(HEADERS_KEY, headers);

        if (prev != null)
            headers = prev;
    }

    headers.add(ACCESS_CONTROL_ALLOW_ORIGIN, ALLOW_ALL_FROM_ORIGIN);
    message.getCacheDirectives().add(CacheDirective.noCache());
    return headers;
}
 
开发者ID:jpinho,项目名称:soaba,代码行数:24,代码来源:RestletServer.java


示例2: getPicture

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Get
public InputRepresentation getPicture() {
  if(authenticate() == false) return null;
  
  String userId = (String) getRequest().getAttributes().get("userId");
  if(userId == null) {
    throw new ActivitiException("No userId provided");
  }
  Picture picture = ActivitiUtil.getIdentityService().getUserPicture(userId);
  
  String contentType = picture.getMimeType();
  MediaType mediatType = MediaType.IMAGE_PNG;
  if(contentType != null) {
    if(contentType.contains(";")) {
      contentType = contentType.substring(0, contentType.indexOf(";"));
    }
    mediatType = MediaType.valueOf(contentType);
  }
  InputRepresentation output = new InputRepresentation(picture.getInputStream(), mediatType);
  getResponse().getCacheDirectives().add(CacheDirective.maxAge(28800));
  
  return output;
}
 
开发者ID:iotsap,项目名称:FiWare-Template-Handler,代码行数:24,代码来源:UserPictureResource.java


示例3: testServletWithCallback

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void testServletWithCallback() throws Exception {
    ContextResource contextResource = resource.getContextResource();
    BlobCrypter crypter = new BasicBlobCrypter("00000000000000000000".getBytes());
    OAuthCallbackState state = new OAuthCallbackState(crypter);
    resource.setStateCrypter(crypter);
    state.setRealCallbackUrl("http://www.example.com/callback");
    contextResource.getParameters().set("cs", state.getEncryptedState());
    contextResource.getRequest().setResourceRef("http://foo.com?cs=foo&bar=baz");
    replay();
    resource.doGet();
    verify();

    assertEquals(Status.REDIRECTION_FOUND, contextResource.getStatus());
    assertEquals(new Reference("http://www.example.com/callback?bar=baz"), contextResource.getResponse().getLocationRef());

    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(2, cacheDirectives.size());
    assertEquals("private", cacheDirectives.get(0).getName());
    assertEquals("max-age", cacheDirectives.get(1).getName());
    assertEquals("3600", cacheDirectives.get(1).getValue());

}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:24,代码来源:OAuthCallbackResourceTest.java


示例4: testServletWithCallback_noQueryParams

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void testServletWithCallback_noQueryParams() throws Exception {
    ContextResource contextResource = resource.getContextResource();
    BlobCrypter crypter = new BasicBlobCrypter("00000000000000000000".getBytes());
    OAuthCallbackState state = new OAuthCallbackState(crypter);
    resource.setStateCrypter(crypter);
    state.setRealCallbackUrl("http://www.example.com/callback");
    contextResource.getParameters().set("cs", state.getEncryptedState());
    contextResource.getRequest().setResourceRef("http://foo.com?cs=foo");
    replay();
    resource.doGet();
    verify();

    assertEquals(Status.REDIRECTION_FOUND, contextResource.getStatus());
    assertEquals(new Reference("http://www.example.com/callback"), contextResource.getResponse().getLocationRef());

    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(2, cacheDirectives.size());
    assertEquals("private", cacheDirectives.get(0).getName());
    assertEquals("max-age", cacheDirectives.get(1).getName());
    assertEquals("3600", cacheDirectives.get(1).getValue());
}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:23,代码来源:OAuthCallbackResourceTest.java


示例5: normalResponse

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void normalResponse() throws Exception {
    ContextResource contextResource = resource.getContextResource();
    resource.setRenderer(renderer);
    expect(renderer.render(isA(GadgetContext.class))).andReturn(RenderingResults.ok("working"));
    control.replay();

    resource.doGet();

    assertEquals(Status.SUCCESS_OK, contextResource.getStatus());

    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(2, cacheDirectives.size());
    assertEquals("private", cacheDirectives.get(0).getName());
    assertEquals("max-age", cacheDirectives.get(1).getName());
    assertEquals(String.valueOf(GadgetRenderingResource.DEFAULT_CACHE_TTL), cacheDirectives.get(1).getValue());

    assertEquals("working", contextResource.getText());
}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:20,代码来源:GadgetRenderingResourceTest.java


示例6: errorsPassedThrough

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void errorsPassedThrough() throws Exception {
    ContextResource contextResource = resource.getContextResource();

    resource.setRenderer(renderer);
    expect(renderer.render(isA(GadgetContext.class))).andReturn(RenderingResults.error("busted", HttpServletResponse.SC_INTERNAL_SERVER_ERROR));
    control.replay();

    resource.doGet();

    assertEquals(Status.SERVER_ERROR_INTERNAL, contextResource.getStatus());

    //        assertNull("Cache-Control header passed where it should not be.",
    //                recorder.getHeader("Cache-Control"));
    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(0, cacheDirectives.size());

    assertEquals("busted", contextResource.getText());

}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:21,代码来源:GadgetRenderingResourceTest.java


示例7: refreshParameter_specified

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void refreshParameter_specified() throws Exception {
    ContextResource contextResource = resource.getContextResource();
    resource.setRenderer(renderer);
    contextResource.getParameters().set("refresh", "1000");
    expect(renderer.render(isA(GadgetContext.class))).andReturn(RenderingResults.ok("working"));
    control.replay();
    resource.doGet();

    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(2, cacheDirectives.size());
    assertEquals("private", cacheDirectives.get(0).getName());
    assertEquals("max-age", cacheDirectives.get(1).getName());
    assertEquals("1000", cacheDirectives.get(1).getValue());

}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:17,代码来源:GadgetRenderingResourceTest.java


示例8: getMaxAge

import org.restlet.data.CacheDirective; //导入依赖的package包/类
/**
 * The "max-age" cache control header.
 * 
 * @return The max age in seconds, or -1 if not set
 * @see #setMaxAge(int)
 */
public int getMaxAge()
{
	for( CacheDirective cacheDirective : getResource().getResponse().getCacheDirectives() )
		if( cacheDirective.getName().equals( HeaderConstants.CACHE_MAX_AGE ) )
			return Integer.parseInt( cacheDirective.getValue() );

	return -1;
}
 
开发者ID:tliron,项目名称:prudence,代码行数:15,代码来源:ExecutionResourceConversationService.java


示例9: setMaxAge

import org.restlet.data.CacheDirective; //导入依赖的package包/类
/**
 * @param maxAge
 *        The max age in seconds, or -1 to explicitly set a "no-cache" cache
 *        control header
 * @see #getMaxAge()
 */
public void setMaxAge( int maxAge )
{
	for( Iterator<CacheDirective> i = getResource().getResponse().getCacheDirectives().iterator(); i.hasNext(); )
		if( i.next().getName().equals( HeaderConstants.CACHE_MAX_AGE ) )
			i.remove();

	if( maxAge != -1 )
		getResource().getResponse().getCacheDirectives().add( CacheDirective.maxAge( maxAge ) );
	else
		getResource().getResponse().getCacheDirectives().add( CacheDirective.noCache() );
}
 
开发者ID:tliron,项目名称:prudence,代码行数:18,代码来源:ExecutionResourceConversationService.java


示例10: afterHandle

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Override
protected void afterHandle( Request request, Response response )
{
	if( response.isEntityAvailable() )
	{
		MediaType mediaType = response.getEntity().getMediaType();
		Number maxAgeNumber = null;
		for( Map.Entry<MediaType, Number> entry : maxAgeForMediaType.entrySet() )
		{
			if( entry.getKey().includes( mediaType ) )
			{
				maxAgeNumber = entry.getValue();
				break;
			}
		}

		if( maxAgeNumber == null )
			maxAgeNumber = defaultMaxAge;

		int maxAge = maxAgeNumber.intValue();

		// Do nothing when negative
		if( maxAge < 0 )
			return;

		List<CacheDirective> cacheDirectives = response.getCacheDirectives();
		cacheDirectives.clear();
		if( maxAge == 0 )
			cacheDirectives.add( CacheDirective.noCache() );
		else
			cacheDirectives.add( CacheDirective.maxAge( maxAge ) );

		// Set expiration date accordingly
		response.getEntity().setExpirationDate( new Date( System.currentTimeMillis() + 1000L * maxAge ) );
	}
}
 
开发者ID:tliron,项目名称:prudence,代码行数:37,代码来源:CacheControlFilter.java


示例11: afterHandle

import org.restlet.data.CacheDirective; //导入依赖的package包/类
/**
 * Sets the HTTP Headers if request was successful
 */
protected void afterHandle(Request request, Response response) {
	super.afterHandle(request, response);
	if (response != null && response.getEntity() != null) {
		if (response.getStatus().equals(Status.SUCCESS_OK)) {
			final Calendar calendar = Calendar.getInstance();
			calendar.add(Calendar.YEAR, 1);
			response.getEntity().setExpirationDate(calendar.getTime());
			response.setCacheDirectives(new ArrayList<CacheDirective>());
			response.getCacheDirectives().add(CacheDirective.maxAge(31536000));
		}
	}
}
 
开发者ID:TomDemeranville,项目名称:orcid-update-java,代码行数:16,代码来源:CacheFilter.java


示例12: getAttachment

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Get
public InputRepresentation getAttachment() {
  if(authenticate() == false) return null;
  
  String attachmentId = (String) getRequest().getAttributes().get("attachmentId");
  
  if(attachmentId == null) {
    throw new ActivitiException("No attachment id provided");
  }

  Attachment attachment = ActivitiUtil.getTaskService().getAttachment(attachmentId);
  if(attachment == null) {
    throw new ActivitiException("No attachment found for " + attachmentId);
  }
  
  String contentType = attachment.getType();
  MediaType mediatType = MediaType.IMAGE_PNG;
  if(contentType != null) {
    if(contentType.contains(";")) {
      contentType = contentType.substring(0, contentType.indexOf(";"));
    }
    mediatType = MediaType.valueOf(contentType);
  }
  InputStream resource = ActivitiUtil.getTaskService().getAttachmentContent(attachmentId);
  InputRepresentation output = new InputRepresentation(resource, mediatType);
  getResponse().getCacheDirectives().add(CacheDirective.maxAge(28800));
  return output;
}
 
开发者ID:iotsap,项目名称:FiWare-Template-Handler,代码行数:29,代码来源:TaskAttachmentResource.java


示例13: renderWithTtl

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void renderWithTtl() throws Exception {
    resource.setRenderer(renderer);
    expect(renderer.render(isA(GadgetContext.class))).andReturn(RenderingResults.ok("working"));
    ContextResource contextResource = resource.getContextResource();
    contextResource.getParameters().set(Param.REFRESH.getKey(), "120");
    control.replay();
    resource.doGet();
    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(2, cacheDirectives.size());
    assertEquals("private", cacheDirectives.get(0).getName());
    assertEquals("max-age", cacheDirectives.get(1).getName());
    assertEquals("120", cacheDirectives.get(1).getValue());
}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:15,代码来源:GadgetRenderingResourceTest.java


示例14: renderWithBadTtl

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void renderWithBadTtl() throws Exception {
    resource.setRenderer(renderer);
    expect(renderer.render(isA(GadgetContext.class))).andReturn(RenderingResults.ok("working"));

    ContextResource contextResource = resource.getContextResource();
    contextResource.getParameters().set(Param.REFRESH.getKey(), "");
    control.replay();
    resource.doGet();
    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(2, cacheDirectives.size());
    assertEquals("private", cacheDirectives.get(0).getName());
    assertEquals("max-age", cacheDirectives.get(1).getName());
    assertEquals("300", cacheDirectives.get(1).getValue());
}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:16,代码来源:GadgetRenderingResourceTest.java


示例15: refreshParameter_default

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Test
public void refreshParameter_default() throws Exception {
    ContextResource contextResource = resource.getContextResource();
    resource.setRenderer(renderer);
    expect(renderer.render(isA(GadgetContext.class))).andReturn(RenderingResults.ok("working"));
    control.replay();
    resource.doGet();

    List<CacheDirective> cacheDirectives = contextResource.getResponse().getCacheDirectives();
    assertEquals(2, cacheDirectives.size());
    assertEquals("private", cacheDirectives.get(0).getName());
    assertEquals("max-age", cacheDirectives.get(1).getName());
    assertEquals("300", cacheDirectives.get(1).getValue());
}
 
开发者ID:devacfr,项目名称:spring-restlet,代码行数:15,代码来源:GadgetRenderingResourceTest.java


示例16: doInit

import org.restlet.data.CacheDirective; //导入依赖的package包/类
@Override
protected void doInit() throws ResourceException {
    super.doInit() ;
    
    this.jobName = (String) getRequestAttributes().get(CmefServer.JOB_VAR) ;
    this.job = loadJob(jobName) ;
    this.jobState = checkJobState(job) ;
    setExisting(job != null) ;
    
    //TODO: better cache control
    //Once job is completed response may be cached for some extended period of time (say 1yr...)
    getResponse().getCacheDirectives().add(CacheDirective.noCache()) ;
}
 
开发者ID:NCIP,项目名称:digital-model-repository,代码行数:14,代码来源:JobStatusResource.java


示例17: setClientCachingHeaders

import org.restlet.data.CacheDirective; //导入依赖的package包/类
/**
 * Sets the client-side caching headers according to the configured caching
 * mode.
 * 
 * @param representation
 *        The representation
 * @param response
 *        The response
 */
public void setClientCachingHeaders( Representation representation, Response response )
{
	List<CacheDirective> cacheDirectives = response.getCacheDirectives();
	switch( attributes.getClientCachingMode() )
	{
		case CLIENT_CACHING_MODE_DISABLED:
		{
			// Remove all conditional and offline caching headers,
			// explicitly setting "no-cache"
			representation.setModificationDate( null );
			representation.setExpirationDate( null );
			representation.setTag( null );
			cacheDirectives.clear();
			cacheDirectives.add( CacheDirective.noCache() );
			break;
		}

		case CLIENT_CACHING_MODE_CONDITIONAL:
			// Leave conditional headers intact, but remove offline
			// caching headers, explicitly setting "no-cache"
			representation.setExpirationDate( null );
			cacheDirectives.clear();
			cacheDirectives.add( CacheDirective.noCache() );
			break;

		case CLIENT_CACHING_MODE_OFFLINE:
		{
			// Add offline caching headers based on conditional
			// headers
			Date expirationDate = representation.getExpirationDate();
			if( expirationDate != null )
			{
				long maxAge = ( expirationDate.getTime() - System.currentTimeMillis() );
				if( maxAge > 0 )
				{
					long maxClientCachingDuration = attributes.getMaxClientCachingDuration();
					if( maxClientCachingDuration != -1L )
						// Limit the cache duration
						maxAge = Math.min( maxAge, maxClientCachingDuration );

					cacheDirectives.clear();
					cacheDirectives.add( CacheDirective.maxAge( (int) ( maxAge / 1000L ) ) );
				}
			}
			break;
		}
	}
}
 
开发者ID:tliron,项目名称:prudence,代码行数:58,代码来源:CachingUtil.java



注:本文中的org.restlet.data.CacheDirective类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java GuiScreenDemo类代码示例发布时间:2022-05-22
下一篇:
Java HDKeyDerivation类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap