@Override public CacheBuilderSpec deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { final String text = jp.getText(); if ("off".equalsIgnoreCase(text) || "disabled".equalsIgnoreCase(text)) { return CacheBuilderSpec.disableCaching(); } return CacheBuilderSpec.parse(text); } }
public void testDisableCaching() { // Functional test: assert that CacheBuilderSpec.disableCaching() // disables caching. It's irrelevant how it does so. CacheBuilder<Object, Object> builder = CacheBuilder.from(CacheBuilderSpec.disableCaching()); Object key = new Object(); Object value = new Object(); LoadingCache<Object, Object> cache = builder.build(CacheLoader.from(Suppliers.ofInstance(value))); assertSame(value, cache.getUnchecked(key)); assertEquals(0, cache.size()); assertFalse(cache.asMap().containsKey(key)); }
@Override public CacheBuilderSpec deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { final String text = jp.getText(); if ("off".equalsIgnoreCase(text) || "disabled".equalsIgnoreCase(text)) { return CacheBuilderSpec.disableCaching(); } return CacheBuilderSpec.parse(text); } }
@Override public CacheBuilderSpec deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { final String text = jp.getText(); if ("off".equalsIgnoreCase(text) || "disabled".equalsIgnoreCase(text)) { return CacheBuilderSpec.disableCaching(); } return CacheBuilderSpec.parse(text); } }
@Override public CacheBuilderSpec deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { final String text = jp.getText(); if ("off".equalsIgnoreCase(text) || "disabled".equalsIgnoreCase(text)) { return CacheBuilderSpec.disableCaching(); } return CacheBuilderSpec.parse(text); } }
public void testDisableCaching() { // Functional test: assert that CacheBuilderSpec.disableCaching() // disables caching. It's irrelevant how it does so. CacheBuilder<Object, Object> builder = CacheBuilder.from(CacheBuilderSpec.disableCaching()); Object key = new Object(); Object value = new Object(); LoadingCache<Object, Object> cache = builder.build( CacheLoader.from(Suppliers.ofInstance(value))); assertSame(value, cache.getUnchecked(key)); assertEquals(0, cache.size()); assertFalse(cache.asMap().containsKey(key)); }
/** * Create a new schema loader with a given loading configuration * * @param cfg the configuration * @see LoadingConfiguration * @see LoadingConfigurationBuilder */ public SchemaLoader(final LoadingConfiguration cfg) { translator = new URITranslator(cfg.getTranslatorConfiguration()); dereferencing = cfg.getDereferencing(); manager = new URIManager(cfg); preloadedSchemas = ImmutableMap.copyOf(cfg.getPreloadedSchemas()); final CacheBuilder<Object, Object> cacheBuilder = cfg.getEnableCache() ? CacheBuilder.newBuilder() : CacheBuilder.from(CacheBuilderSpec.disableCaching()); cache = cacheBuilder.build(new CacheLoader<URI, JsonNode>() { @Nonnull @Override public JsonNode load(@Nonnull final URI key) throws ProcessingException { return manager.getContent(key); } }); }