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


Java Filter.STOP属性代码示例

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


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

示例1: beforeHandle

@Override
protected int beforeHandle( Request request, Response response )
{
	Reference reference = request.getResourceRef();
	String name = reference.getLastSegment( true, false );
	try
	{
		boolean validate = false;
		boolean minify = false;
		if( name.equals( unifiedFilename ) )
			validate = true;
		else if( name.equals( unifiedMinifiedFilename ) )
		{
			validate = true;
			minify = true;
		}

		if( validate )
		{
			long now = System.currentTimeMillis();
			long lastValidityCheck = this.lastValidityCheck.get();
			if( lastValidityCheck == 0 || ( now - lastValidityCheck > minimumTimeBetweenValidityChecks ) )
			{
				if( this.lastValidityCheck.compareAndSet( lastValidityCheck, now ) )
					unify( targetDirectory, minify );
			}
		}
	}
	catch( IOException x )
	{
		response.setStatus( Status.SERVER_ERROR_INTERNAL, x );
		return Filter.STOP;
	}

	return Filter.CONTINUE;
}
 
开发者ID:tliron,项目名称:prudence,代码行数:36,代码来源:UnifyMinifyFilter.java

示例2: beforeHandle

protected int beforeHandle(Request request, Response response) {
   if (cacheDir==null || duration<1) {
      return Filter.CONTINUE;
   }
   String href = request.getResourceRef().getRemainingPart();
   getLogger().info("Checking cache for "+href);
   request.getAttributes().put("cache.href", href);
   File cacheFile = getCacheFile(href);
   File cacheMetadataFile = getCacheMetadataFile(href);
   if (cacheFile.exists()) {
      if (isCacheValid(cacheFile.lastModified(),request)) {
         getLogger().info("Using cache file: "+cacheFile);
         try {
            makeResponse(cacheFile,cacheMetadataFile,response);
         } catch (IOException ex) {
            getLogger().log(Level.SEVERE,"I/O error processing cache files.",ex);
            response.setStatus(Status.SERVER_ERROR_INTERNAL, "I/O error processing cache files.");
            return Filter.STOP;
         }
         return Filter.STOP;
      } else {
         cacheFile.delete();
         cacheMetadataFile.delete();
      }
   } else if (cacheMetadataFile.exists()) {
      cacheMetadataFile.delete();
   }
   return Filter.CONTINUE;
}
 
开发者ID:alexmilowski,项目名称:xproclet,代码行数:29,代码来源:ResponseCacheFilter.java

示例3: beforeHandle

protected int beforeHandle(Request request,Response response) {
   if (request.getMethod().equals(Method.OPTIONS)) {
      response.setStatus(Status.SUCCESS_NO_CONTENT);
      addAccessControl(response);
      return Filter.STOP;
   }
   return Filter.CONTINUE;
}
 
开发者ID:alexmilowski,项目名称:xproclet,代码行数:8,代码来源:CORSFilter.java

示例4: beforeHandle

protected int beforeHandle(Request request,Response response) {
   for (SecureRoute route : routes) {
      getLogger().info("Checking "+route.getTemplate().getPattern()+" against "+request.getResourceRef().getRemainingPart());
      if (route.matches(request)) {
         getLogger().info("Route matched, checking authorization...");
         switch (route.area.isAuthorized(request)) {
            case -1: // No identity
               if (route.area.getLoginReference()==null) {
                  response.setStatus(Status.CLIENT_ERROR_UNAUTHORIZED);
               } else {
                  getLogger().info("No identity, redirecting to "+route.area.getLoginReference()+" for login.");
                  response.redirectSeeOther(route.area.getLoginReference()+"?url="+request.getResourceRef());
               }
               return Filter.STOP;
            case 0: // Not authorized
               if (route.area.getNotAuthorizedReference()==null) {
                  response.setStatus(Status.CLIENT_ERROR_FORBIDDEN);
               } else {
                  getLogger().info("Not authorized , redirecting to "+route.area.getNotAuthorizedReference());
                  response.redirectSeeOther(route.area.getNotAuthorizedReference()+"?url="+request.getResourceRef());
               }
               return Filter.STOP;
            case 1: // OK
               return Filter.CONTINUE;
         }
      }
   }
   return Filter.CONTINUE;
}
 
开发者ID:alexmilowski,项目名称:xproclet,代码行数:29,代码来源:SecurityGuard.java

示例5: beforeHandle

@Override
protected int beforeHandle( Request request, Response response )
{
	Reference reference = request.getResourceRef();
	String path = reference.getRemainingPart( true, false );
	try
	{
		// String name = reference.getLastSegment( true, false );
		String zussPath = null;
		boolean minify = false;
		if( path.endsWith( CSS_MIN_EXTENSION ) )
		{
			zussPath = path.substring( 0, path.length() - CSS_MIN_EXTENSION_LENGTH ) + ZUSS_EXTENSION;
			minify = true;
		}
		else if( path.endsWith( CSS_EXTENSION ) )
			zussPath = path.substring( 0, path.length() - CSS_EXTENSION_LENGTH ) + ZUSS_EXTENSION;

		if( zussPath != null )
		{
			long now = System.currentTimeMillis();
			AtomicLong lastValidityCheckAtomic = getLastValidityCheck( path );
			long lastValidityCheck = lastValidityCheckAtomic.get();
			if( lastValidityCheck == 0 || ( now - lastValidityCheck > minimumTimeBetweenValidityChecks ) )
			{
				if( lastValidityCheckAtomic.compareAndSet( lastValidityCheck, now ) )
				{
					for( File sourceDirectory : sourceDirectories )
					{
						File zussFile = new File( sourceDirectory, zussPath );
						if( zussFile.exists() )
						{
							File cssFile = new File( targetDirectory, path );
							translate( zussFile, cssFile, minify );
							break;
						}
					}

					// ZUSS file was not found, so don't keep the entry for
					// it
					this.lastValidityChecks.remove( path );
				}
			}
		}
	}
	catch( IOException x )
	{
		response.setStatus( Status.SERVER_ERROR_INTERNAL, x );
		return Filter.STOP;
	}

	return Filter.CONTINUE;
}
 
开发者ID:tliron,项目名称:prudence,代码行数:53,代码来源:ZussFilter.java

示例6: beforeHandle

@Override
protected int beforeHandle( Request request, Response response )
{
	Reference reference = request.getResourceRef();
	String path = reference.getRemainingPart( true, false );
	try
	{
		// String name = reference.getLastSegment( true, false );
		String lessPath = null;
		boolean minify = false;
		if( path.endsWith( CSS_MIN_EXTENSION ) )
		{
			lessPath = path.substring( 0, path.length() - CSS_MIN_EXTENSION_LENGTH ) + LESS_EXTENSION;
			minify = true;
		}
		else if( path.endsWith( CSS_EXTENSION ) )
			lessPath = path.substring( 0, path.length() - CSS_EXTENSION_LENGTH ) + LESS_EXTENSION;

		if( lessPath != null )
		{
			long now = System.currentTimeMillis();
			AtomicLong lastValidityCheckAtomic = getLastValidityCheck( path );
			long lastValidityCheck = lastValidityCheckAtomic.get();
			if( lastValidityCheck == 0 || ( now - lastValidityCheck > minimumTimeBetweenValidityChecks ) )
			{
				if( lastValidityCheckAtomic.compareAndSet( lastValidityCheck, now ) )
				{
					for( File sourceDirectory : sourceDirectories )
					{
						File lessFile = new File( sourceDirectory, lessPath );
						if( lessFile.exists() )
						{
							File cssFile = new File( targetDirectory, path );
							translate( lessFile, cssFile, minify );
							break;
						}
					}

					// LESS file was not found, so don't keep the entry for
					// it
					this.lastValidityChecks.remove( path );
				}
			}
		}
	}
	catch( IOException x )
	{
		response.setStatus( Status.SERVER_ERROR_INTERNAL, x );
		return Filter.STOP;
	}

	return Filter.CONTINUE;
}
 
开发者ID:tliron,项目名称:prudence,代码行数:53,代码来源:LessFilter.java


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