Пример #1
0
  /**
   * Creates a cached tile layer from the given Layer Group
   *
   * @param info the layer group to cache
   * @param defaults default configuration
   */
  public static GeoServerTileLayerInfoImpl loadOrCreate(
      final LayerGroupInfo groupInfo, final GWCConfig defaults) {

    GeoServerTileLayerInfoImpl info = LegacyTileLayerInfoLoader.load(groupInfo);
    if (info == null) {
      info = create(defaults);
      checkAutomaticStyles(groupInfo, info);
    }
    info.setName(tileLayerName(groupInfo));
    info.setId(groupInfo.getId());
    return info;
  }
 public static GeoServerTileLayerInfoImpl load(final LayerGroupInfo layerGroup) {
   MetadataMap metadataMap = layerGroup.getMetadata();
   if (!hasTileLayerDef(metadataMap)) {
     return null;
   }
   GeoServerTileLayerInfoImpl tileLayerInfo = load(metadataMap);
   if (tileLayerInfo != null) {
     tileLayerInfo.setName(tileLayerName(layerGroup));
     tileLayerInfo.setId(layerGroup.getId());
   }
   TileLayerInfoUtil.checkAutomaticStyles(layerGroup, tileLayerInfo);
   return tileLayerInfo;
 }
Пример #3
0
  /**
   * Creates a cached tile layer from the given Layer
   *
   * @param info the layer to cache
   * @param defaults default configuration
   */
  public static GeoServerTileLayerInfoImpl loadOrCreate(
      final LayerInfo layerInfo, final GWCConfig defaults) {
    GeoServerTileLayerInfoImpl info = LegacyTileLayerInfoLoader.load(layerInfo);
    if (info == null) {
      info = create(defaults);
      final ResourceInfo resource = layerInfo.getResource();
      if (resource instanceof FeatureTypeInfo) {
        info.getMimeFormats().clear();
        info.getMimeFormats().addAll(defaults.getDefaultVectorCacheFormats());
      } else if (resource instanceof CoverageInfo) {
        info.getMimeFormats().clear();
        info.getMimeFormats().addAll(defaults.getDefaultCoverageCacheFormats());
      }

      checkAutomaticStyles(layerInfo, info);
    }
    info.setName(tileLayerName(layerInfo));
    info.setId(layerInfo.getId());
    return info;
  }
  public static GeoServerTileLayerInfoImpl load(final LayerInfo layer) {
    MetadataMap metadataMap = layer.getMetadata();

    if (!hasTileLayerDef(metadataMap)) {
      return null;
    }
    GeoServerTileLayerInfoImpl tileLayerInfo = load(metadataMap);

    if (metadataMap.containsKey(CONFIG_KEY_CACHED_STYLES)) {
      final String defaultStyle =
          layer.getDefaultStyle() == null ? "" : layer.getDefaultStyle().prefixedName();
      String cachedStylesStr = metadataMap.get(CONFIG_KEY_CACHED_STYLES, String.class);
      Set<String> cachedStyles = unmarshalSet(cachedStylesStr);
      TileLayerInfoUtil.setCachedStyles(tileLayerInfo, defaultStyle, cachedStyles);
    }

    TileLayerInfoUtil.checkAutomaticStyles(layer, tileLayerInfo);
    tileLayerInfo.setName(tileLayerName(layer));
    tileLayerInfo.setId(layer.getId());
    return tileLayerInfo;
  }
  private static GeoServerTileLayerInfoImpl load(final MetadataMap metadataMap) {

    GeoServerTileLayerInfoImpl info = new GeoServerTileLayerInfoImpl();
    // whether the config needs to be saved

    final boolean enabled = metadataMap.get(CONFIG_KEY_ENABLED, Boolean.class).booleanValue();
    info.setEnabled(enabled);

    int gutter = metadataMap.get(CONFIG_KEY_GUTTER, Integer.class).intValue();
    info.setGutter(gutter);

    String gridsets = metadataMap.get(CONFIG_KEY_GRIDSETS, String.class);
    Set<XMLGridSubset> gridSetIds = unmarshalGridSubsets(gridsets);
    info.getGridSubsets().addAll(gridSetIds);

    int metaTilingX = metadataMap.get(CONFIG_KEY_METATILING_X, Integer.class).intValue();
    info.setMetaTilingX(metaTilingX);

    int metaTilingY = metadataMap.get(CONFIG_KEY_METATILING_Y, Integer.class).intValue();
    info.setMetaTilingY(metaTilingY);

    if (metadataMap.containsKey(CONFIG_KEY_FORMATS)) {
      String mimeFormatsStr = metadataMap.get(CONFIG_KEY_FORMATS, String.class);
      Set<String> mimeFormats = unmarshalSet(mimeFormatsStr);
      info.getMimeFormats().addAll(mimeFormats);
    }

    if (metadataMap.containsKey(CONFIG_KEY_AUTO_CACHE_STYLES)) {
      boolean autoCacheStyles =
          metadataMap.get(CONFIG_KEY_AUTO_CACHE_STYLES, Boolean.class).booleanValue();
      info.setAutoCacheStyles(autoCacheStyles);
    }

    if (metadataMap.containsKey(CONFIG_KEY_IN_MEMORY_CACHED)) {
      boolean inMemoryCached = metadataMap.get(CONFIG_KEY_IN_MEMORY_CACHED, Boolean.class);
      info.setInMemoryCached(inMemoryCached);
    }

    return info;
  }
Пример #6
0
  /**
   * Creates a default tile layer info based on the global defaults, public only for unit testing
   * purposes.
   */
  public static GeoServerTileLayerInfoImpl create(GWCConfig defaults) {

    GeoServerTileLayerInfoImpl info = new GeoServerTileLayerInfoImpl();

    info.setEnabled(defaults.isCacheLayersByDefault());
    info.setAutoCacheStyles(defaults.isCacheNonDefaultStyles());

    for (String gsetId : defaults.getDefaultCachingGridSetIds()) {
      XMLGridSubset subset = new XMLGridSubset();
      subset.setGridSetName(gsetId);
      info.getGridSubsets().add(subset);
    }

    info.getMimeFormats().addAll(defaults.getDefaultOtherCacheFormats());

    info.setGutter(defaults.getGutter());
    info.setMetaTilingX(defaults.getMetaTilingX());
    info.setMetaTilingY(defaults.getMetaTilingY());
    info.setInMemoryCached(true);

    return info;
  }