test_class.declarator: tmsController
test_class.modifier: @Autowired
  	private
test_class.original_string: @Autowired
  	private TmsController tmsController;
test_class.type: TmsController
test_class.var_name: tmsController
test_class.declarator: imagePath
test_class.modifier: @Qualifier("MvcTest.path")
  	@Autowired
  	private
test_class.original_string: @Qualifier("MvcTest.path")
  	@Autowired
  	private String imagePath;
test_class.type: String
test_class.var_name: imagePath
test_class.declarator: securityManager
test_class.modifier: @Autowired
  	private
test_class.original_string: @Autowired
  	private SecurityManager securityManager;
test_class.type: SecurityManager
test_class.var_name: securityManager
test_class.declarator: DELTA = 0.07
test_class.modifier: private static final
test_class.original_string: private static final double DELTA = 0.07;
test_class.type: double
test_class.var_name: DELTA
test_class.declarator: writeImages = false
test_class.modifier: private
test_class.original_string: private boolean writeImages = false;
test_class.type: boolean
test_class.var_name: writeImages
test_class.file: plugin/rasterizing/rasterizing/src/test/java/org/geomajas/plugin/rasterizing/mvc/TmsControllerTest.java
test_class.identifier: TmsControllerTest
test_case.body: @Test
  	public void getVectorTile() throws Exception {
  		MockHttpServletResponse response = new MockHttpServletResponse();
  		tmsController.getVectorTile("layerBeansMultiPolygon", "layerBeansMultiPolygonStyleInfo", "EPSG:4326", 0, 0, 0,
  				100.0 / 256.0, "-50,-50", 256, 256, true, false, null, response);
  		response.flushBuffer();
  		new ResponseAssert(response).assertEqualImage("layerBeansMultiPolygon-0-0-0.png", writeImages, DELTA);
  	}
test_case.class_method_signature: TmsControllerTest.getVectorTile()
test_case.full_signature: @Test public void getVectorTile()
test_case.identifier: getVectorTile
test_case.invocations: getVectorTile flushBuffer assertEqualImage
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void getVectorTile()
focal_class.declarator: PROFILE_TILE_SIZE = 256
focal_class.modifier: public static final
focal_class.original_string: public static final int PROFILE_TILE_SIZE = 256;
focal_class.type: int
focal_class.var_name: PROFILE_TILE_SIZE
focal_class.declarator: log = LoggerFactory.getLogger(TmsController.class)
focal_class.modifier: private final
focal_class.original_string: private final Logger log = LoggerFactory.getLogger(TmsController.class);
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: MAPPING = "/tms/"
focal_class.modifier: public static final
focal_class.original_string: public static final String MAPPING = "/tms/";
focal_class.type: String
focal_class.var_name: MAPPING
focal_class.declarator: MAPPING_1_0_0 = "/tms/1.0.0"
focal_class.modifier: public static final
focal_class.original_string: public static final String MAPPING_1_0_0 = "/tms/1.0.0";
focal_class.type: String
focal_class.var_name: MAPPING_1_0_0
focal_class.declarator: pipelineService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private PipelineService<GetTileContainer> pipelineService;
focal_class.type: PipelineService<GetTileContainer>
focal_class.var_name: pipelineService
focal_class.declarator: configurationService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private ConfigurationService configurationService;
focal_class.type: ConfigurationService
focal_class.var_name: configurationService
focal_class.declarator: cacheManagerService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private CacheManagerService cacheManagerService;
focal_class.type: CacheManagerService
focal_class.var_name: cacheManagerService
focal_class.declarator: dtoConverterService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private DtoConverterService dtoConverterService;
focal_class.type: DtoConverterService
focal_class.var_name: dtoConverterService
focal_class.declarator: geoService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private GeoService geoService;
focal_class.type: GeoService
focal_class.var_name: geoService
focal_class.declarator: recorder
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private TestRecorder recorder;
focal_class.type: TestRecorder
focal_class.var_name: recorder
focal_class.declarator: securityContextAdder
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private CachingSupportServiceSecurityContextAdder securityContextAdder;
focal_class.type: CachingSupportServiceSecurityContextAdder
focal_class.var_name: securityContextAdder
focal_class.declarator: styleService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private StyleService styleService;
focal_class.type: StyleService
focal_class.var_name: styleService
focal_class.declarator: layerService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private VectorLayerService layerService;
focal_class.type: VectorLayerService
focal_class.var_name: layerService
focal_class.declarator: rasterLayerService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private RasterLayerService rasterLayerService;
focal_class.type: RasterLayerService
focal_class.var_name: rasterLayerService
focal_class.declarator: httpService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private LayerHttpService httpService;
focal_class.type: LayerHttpService
focal_class.var_name: httpService
focal_class.declarator: tmsService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private TmsServiceImpl tmsService;
focal_class.type: TmsServiceImpl
focal_class.var_name: tmsService
focal_class.declarator: cachingSupportService
focal_class.modifier: @Autowired
  	private
focal_class.original_string: @Autowired
  	private CachingSupportService cachingSupportService;
focal_class.type: CachingSupportService
focal_class.var_name: cachingSupportService
focal_class.declarator: redirectRasterLayers = true
focal_class.modifier: private
focal_class.original_string: private boolean redirectRasterLayers = true;
focal_class.type: boolean
focal_class.var_name: redirectRasterLayers
focal_class.declarator: ERROR_MESSAGE_X = 10
focal_class.modifier: private static final
focal_class.original_string: private static final int ERROR_MESSAGE_X = 10;
focal_class.type: int
focal_class.var_name: ERROR_MESSAGE_X
focal_class.declarator: TMS_TILE_RENDERER = "TmsTileRenderer"
focal_class.modifier: private static final
focal_class.original_string: private static final String TMS_TILE_RENDERER = "TmsTileRenderer";
focal_class.type: String
focal_class.var_name: TMS_TILE_RENDERER
focal_class.declarator: KEYS = { PipelineCode.LAYER_ID_KEY, PipelineCode.TILE_METADATA_KEY }
focal_class.modifier: private static final
focal_class.original_string: private static final String[] KEYS = { PipelineCode.LAYER_ID_KEY, PipelineCode.TILE_METADATA_KEY };
focal_class.type: String[]
focal_class.var_name: KEYS
focal_class.declarator: profiles = new HashMap<String, TmsProfile>()
focal_class.modifier: private
focal_class.original_string: private Map<String, TmsProfile> profiles = new HashMap<String, TmsProfile>();
focal_class.type: Map<String, TmsProfile>
focal_class.var_name: profiles
focal_class.file: plugin/rasterizing/rasterizing/src/main/java/org/geomajas/plugin/rasterizing/mvc/TmsController.java
focal_class.identifier: TmsController
focal_class.class_method_signature: TmsController.TmsController()
focal_class.full_signature: public  TmsController()
focal_class.identifier: TmsController
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  TmsController()
focal_class.class_method_signature: TmsController.isRedirectRasterLayers()
focal_class.full_signature: public boolean isRedirectRasterLayers()
focal_class.identifier: isRedirectRasterLayers
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isRedirectRasterLayers()
focal_class.class_method_signature: TmsController.setRedirectRasterLayers(boolean redirectRasterLayers)
focal_class.full_signature: public void setRedirectRasterLayers(boolean redirectRasterLayers)
focal_class.identifier: setRedirectRasterLayers
focal_class.modifiers: public
focal_class.parameters: (boolean redirectRasterLayers)
focal_class.return: void
focal_class.signature: void setRedirectRasterLayers(boolean redirectRasterLayers)
focal_class.class_method_signature: TmsController.getTileMapService(HttpServletResponse response)
focal_class.full_signature: @RequestMapping(value = MAPPING_1_0_0, method = RequestMethod.GET) public void getTileMapService(HttpServletResponse response)
focal_class.identifier: getTileMapService
focal_class.modifiers: @RequestMapping(value = MAPPING_1_0_0, method = RequestMethod.GET) public
focal_class.parameters: (HttpServletResponse response)
focal_class.return: void
focal_class.signature: void getTileMapService(HttpServletResponse response)
focal_class.class_method_signature: TmsController.getTileMap(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			HttpServletResponse response)
focal_class.full_signature: @RequestMapping(value = MAPPING_1_0_0 + "/{layerId}@{crs}/{styleKey}", method = RequestMethod.GET) public void getTileMap(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			HttpServletResponse response)
focal_class.identifier: getTileMap
focal_class.modifiers: @RequestMapping(value = MAPPING_1_0_0 + "/{layerId}@{crs}/{styleKey}", method = RequestMethod.GET) public
focal_class.parameters: (@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			HttpServletResponse response)
focal_class.return: void
focal_class.signature: void getTileMap(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			HttpServletResponse response)
focal_class.class_method_signature: TmsController.getTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.full_signature: @RequestMapping(value = MAPPING_1_0_0 + "/{layerId}@{crs}/{styleKey}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public void getTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.identifier: getTile
focal_class.modifiers: @RequestMapping(value = MAPPING_1_0_0 + "/{layerId}@{crs}/{styleKey}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public
focal_class.parameters: (@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.return: void
focal_class.signature: void getTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.class_method_signature: TmsController.getVectorTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.full_signature: @RequestMapping(value = MAPPING + "{layerId}@{crs}/{styleKey}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public void getVectorTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.identifier: getVectorTile
focal_class.modifiers: @RequestMapping(value = MAPPING + "{layerId}@{crs}/{styleKey}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public
focal_class.parameters: (@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.return: void
focal_class.signature: void getVectorTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_class.class_method_signature: TmsController.getRasterTile(@PathVariable String layerId, @PathVariable String crs, @PathVariable Integer tileLevel,
  			@PathVariable Integer xIndex, @PathVariable Integer yIndex, @PathVariable String imageFormat,
  			HttpServletRequest request, HttpServletResponse response)
focal_class.full_signature: @RequestMapping(value = MAPPING + "{layerId}@{crs}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public void getRasterTile(@PathVariable String layerId, @PathVariable String crs, @PathVariable Integer tileLevel,
  			@PathVariable Integer xIndex, @PathVariable Integer yIndex, @PathVariable String imageFormat,
  			HttpServletRequest request, HttpServletResponse response)
focal_class.identifier: getRasterTile
focal_class.modifiers: @RequestMapping(value = MAPPING + "{layerId}@{crs}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public
focal_class.parameters: (@PathVariable String layerId, @PathVariable String crs, @PathVariable Integer tileLevel,
  			@PathVariable Integer xIndex, @PathVariable Integer yIndex, @PathVariable String imageFormat,
  			HttpServletRequest request, HttpServletResponse response)
focal_class.return: void
focal_class.signature: void getRasterTile(@PathVariable String layerId, @PathVariable String crs, @PathVariable Integer tileLevel,
  			@PathVariable Integer xIndex, @PathVariable Integer yIndex, @PathVariable String imageFormat,
  			HttpServletRequest request, HttpServletResponse response)
focal_class.class_method_signature: TmsController.getProfileForLayer(String layerId, String crs)
focal_class.full_signature: private TmsProfile getProfileForLayer(String layerId, String crs)
focal_class.identifier: getProfileForLayer
focal_class.modifiers: private
focal_class.parameters: (String layerId, String crs)
focal_class.return: TmsProfile
focal_class.signature: TmsProfile getProfileForLayer(String layerId, String crs)
focal_class.class_method_signature: TmsController.renderImage(String layerId, String key, HttpServletResponse response)
focal_class.full_signature: private void renderImage(String layerId, String key, HttpServletResponse response)
focal_class.identifier: renderImage
focal_class.modifiers: private
focal_class.parameters: (String layerId, String key, HttpServletResponse response)
focal_class.return: void
focal_class.signature: void renderImage(String layerId, String key, HttpServletResponse response)
focal_class.class_method_signature: TmsController.parseOrigin(String tileOrigin)
focal_class.full_signature: private Coordinate parseOrigin(String tileOrigin)
focal_class.identifier: parseOrigin
focal_class.modifiers: private
focal_class.parameters: (String tileOrigin)
focal_class.return: Coordinate
focal_class.signature: Coordinate parseOrigin(String tileOrigin)
focal_class.class_method_signature: TmsController.getScale(int screenWidth, int level, double width)
focal_class.full_signature: private double getScale(int screenWidth, int level, double width)
focal_class.identifier: getScale
focal_class.modifiers: private
focal_class.parameters: (int screenWidth, int level, double width)
focal_class.return: double
focal_class.signature: double getScale(int screenWidth, int level, double width)
focal_class.class_method_signature: TmsController.getLayerExtent(TileMetadata tileMetadata)
focal_class.full_signature: private Envelope getLayerExtent(TileMetadata tileMetadata)
focal_class.identifier: getLayerExtent
focal_class.modifiers: private
focal_class.parameters: (TileMetadata tileMetadata)
focal_class.return: Envelope
focal_class.signature: Envelope getLayerExtent(TileMetadata tileMetadata)
focal_class.class_method_signature: TmsController.getRasterLayerExtent(String layerId, String crs)
focal_class.full_signature: private Envelope getRasterLayerExtent(String layerId, String crs)
focal_class.identifier: getRasterLayerExtent
focal_class.modifiers: private
focal_class.parameters: (String layerId, String crs)
focal_class.return: Envelope
focal_class.signature: Envelope getRasterLayerExtent(String layerId, String crs)
focal_class.class_method_signature: TmsController.writeToResponse(RasterLayer layer, String url, HttpServletRequest request, 
  			HttpServletResponse response)
focal_class.full_signature: private void writeToResponse(RasterLayer layer, String url, HttpServletRequest request, 
  			HttpServletResponse response)
focal_class.identifier: writeToResponse
focal_class.modifiers: private
focal_class.parameters: (RasterLayer layer, String url, HttpServletRequest request, 
  			HttpServletResponse response)
focal_class.return: void
focal_class.signature: void writeToResponse(RasterLayer layer, String url, HttpServletRequest request, 
  			HttpServletResponse response)
focal_class.class_method_signature: TmsController.createErrorImage(int width, int height, Exception e)
focal_class.full_signature: private byte[] createErrorImage(int width, int height, Exception e)
focal_class.identifier: createErrorImage
focal_class.modifiers: private
focal_class.parameters: (int width, int height, Exception e)
focal_class.return: byte[]
focal_class.signature: byte[] createErrorImage(int width, int height, Exception e)
focal_method.body: @RequestMapping(value = MAPPING + "{layerId}@{crs}/{styleKey}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}",
  			method = RequestMethod.GET)
  	public void getVectorTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response) throws Exception {
  		try {
  			Crs tileCrs = geoService.getCrs2(crs);
  			TmsTileMetadata tileMetadata = new TmsTileMetadata();
  			tileMetadata.setCode(new TileCode(tileLevel, xIndex, yIndex));
  			tileMetadata.setCrs(geoService.getCodeFromCrs(tileCrs));
  			tileMetadata.setLayerId(layerId);
  			tileMetadata.setPaintGeometries(showGeometries);
  			tileMetadata.setPaintLabels(showLabels);
  			tileMetadata.setRenderer(TMS_TILE_RENDERER);
  			tileMetadata.setTileWidth(tileWidth);
  			tileMetadata.setTileHeight(tileHeight);
  			// TmsTileMetadata specific
  			tileMetadata.setStyleInfo(styleService.retrieveStyle(layerId, styleKey));
  			tileMetadata.setFilter(filter);
  			// if no origin or resolution, try one of the preconfigured profiles or fall back to
  			// the layer bounds
  			if (resolution == null || tileOrigin == null) {
  				getProfileForLayer(layerId, crs).prepareMetadata(tileMetadata);
  			} else {
  				tileMetadata.setResolution(resolution);
  				tileMetadata.setTileOrigin(parseOrigin(tileOrigin));
  			}
  
  			RebuildCacheContainer rcc = new RebuildCacheContainer();
  			rcc.setMetadata(tileMetadata);
  			PipelineContext context = pipelineService.createContext();
  			context.put(PipelineCode.TILE_METADATA_KEY, tileMetadata);
  			context.put(PipelineCode.LAYER_ID_KEY, layerId);
  			// store container to recover the key
  			cachingSupportService.putContainer(context, securityContextAdder, CacheCategory.REBUILD, KEYS,
  					RasterizingPipelineCode.IMAGE_ID_KEY, RasterizingPipelineCode.IMAGE_ID_CONTEXT, rcc, null);
  			String key = context.get(RasterizingPipelineCode.IMAGE_ID_KEY, String.class);
  			renderImage(layerId, key, response);
  		} catch (Throwable e) { // NOSONAR need to log all problems
  			log.error("Could not rasterize tile " + layerId + "/" + styleKey + "/" + tileLevel + "-" + xIndex + "-"
  					+ yIndex + ".png", e);
  			response.sendError(HttpServletResponse.SC_NO_CONTENT);
  		}
  	}
focal_method.class_method_signature: TmsController.getVectorTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_method.full_signature: @RequestMapping(value = MAPPING + "{layerId}@{crs}/{styleKey}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public void getVectorTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_method.identifier: getVectorTile
focal_method.invocations: getCrs2 setCode setCrs getCodeFromCrs setLayerId setPaintGeometries setPaintLabels setRenderer setTileWidth setTileHeight setStyleInfo retrieveStyle setFilter prepareMetadata getProfileForLayer setResolution setTileOrigin parseOrigin setMetadata createContext put put putContainer get renderImage error sendError
focal_method.modifiers: @RequestMapping(value = MAPPING + "{layerId}@{crs}/{styleKey}/{tileLevel}/{xIndex}/{yIndex}.{imageFormat}", method = RequestMethod.GET) public
focal_method.parameters: (@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)
focal_method.return: void
focal_method.signature: void getVectorTile(@PathVariable String layerId, @PathVariable String styleKey, @PathVariable String crs,
  			@PathVariable Integer tileLevel, @PathVariable Integer xIndex, @PathVariable Integer yIndex,
  			@RequestParam(required = false) Double resolution, @RequestParam(required = false) String tileOrigin,
  			@RequestParam(required = false, defaultValue = "256") int tileWidth,
  			@RequestParam(required = false, defaultValue = "256") int tileHeight,
  			@RequestParam(required = false, defaultValue = "true") boolean showGeometries,
  			@RequestParam(required = false, defaultValue = "false") boolean showLabels,
  			@RequestParam(required = false) String filter, HttpServletResponse response)