Skip to content

Commit ad84ec7

Browse files
committed
#248 Remove optional features from samples. Add an optional package to demo which shows their use.
1 parent 12097bd commit ad84ec7

8 files changed

+123
-19
lines changed

src/test/java/javax/cache/CacheDemos.java renamed to src/test/java/javax/cache/core/CacheDemos.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
package javax.cache;
1+
package javax.cache.core;
22

33
import org.junit.Test;
44

5+
import javax.cache.Cache;
6+
import javax.cache.CacheManager;
7+
import javax.cache.Caching;
58
import javax.cache.configuration.MutableConfiguration;
69
import javax.cache.expiry.AccessedExpiryPolicy;
710
import javax.cache.spi.CachingProvider;
@@ -12,6 +15,7 @@
1215

1316

1417
/**
18+
*
1519
* @author Greg Luck
1620
*/
1721
public class CacheDemos {
@@ -26,7 +30,7 @@ public void simpleAPITypeEnforcement() {
2630

2731
//configure the cache
2832
MutableConfiguration<String, Integer> config = new MutableConfiguration<>();
29-
config.setStoreByValue(false)
33+
config.setStoreByValue(true)
3034
.setTypes(String.class, Integer.class)
3135
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
3236
.setStatisticsEnabled(true);
@@ -59,8 +63,7 @@ public void simpleAPITypeEnforcementUsingCaching() {
5963

6064
//configure the cache
6165
MutableConfiguration<String, Integer> config = new MutableConfiguration<>();
62-
config.setStoreByValue(false)
63-
.setTypes(String.class, Integer.class)
66+
config.setTypes(String.class, Integer.class)
6467
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
6568
.setStatisticsEnabled(true);
6669

@@ -91,8 +94,7 @@ public void simpleAPIWithGenericsAndNoTypeEnforcement() {
9194
//configure the cache
9295
String cacheName = "sampleCache3";
9396
MutableConfiguration config = new MutableConfiguration<String, Integer>();
94-
config.setStoreByValue(false)
95-
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
97+
config.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
9698
.setStatisticsEnabled(true);
9799

98100
//create the cache
@@ -125,8 +127,7 @@ public void simpleAPINoGenericsAndNoTypeEnforcement() {
125127
//configure the cache
126128
String cacheName = "sampleCache";
127129
MutableConfiguration config = new MutableConfiguration();
128-
config.setStoreByValue(false)
129-
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
130+
config.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
130131
.setStatisticsEnabled(true);
131132

132133
//create the cache
@@ -161,8 +162,7 @@ public void simpleAPITypeEnforcementObject() {
161162

162163
//configure the cache
163164
MutableConfiguration<Object, Object> config = new MutableConfiguration<>();
164-
config.setStoreByValue(false)
165-
.setTypes(Object.class, Object.class)
165+
config.setTypes(Object.class, Object.class)
166166
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
167167
.setStatisticsEnabled(true);
168168

src/test/java/javax/cache/CompletionListenerExamples.java renamed to src/test/java/javax/cache/core/CompletionListenerExamples.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
package javax.cache;
1+
package javax.cache.core;
22

3+
import javax.cache.Cache;
4+
import javax.cache.CacheManager;
5+
import javax.cache.Caching;
36
import javax.cache.configuration.MutableConfiguration;
47
import javax.cache.expiry.AccessedExpiryPolicy;
58
import javax.cache.integration.CompletionListenerFuture;
@@ -22,8 +25,7 @@ public void completionListenerExample() {
2225
CacheManager cacheManager = cachingProvider.getCacheManager();
2326

2427
MutableConfiguration<String, Integer> config = new MutableConfiguration<>();
25-
config.setStoreByValue(false)
26-
.setTypes(String.class, Integer.class)
28+
config.setTypes(String.class, Integer.class)
2729
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
2830
.setStatisticsEnabled(true);
2931

src/test/java/javax/cache/EntryProcessorExamples.java renamed to src/test/java/javax/cache/core/EntryProcessorExamples.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
package javax.cache;
1+
package javax.cache.core;
22

33
import org.junit.Test;
44

5+
import javax.cache.Cache;
6+
import javax.cache.CacheManager;
7+
import javax.cache.Caching;
58
import javax.cache.configuration.MutableConfiguration;
69
import javax.cache.processor.EntryProcessor;
710
import javax.cache.processor.MutableEntry;
@@ -16,7 +19,7 @@
1619
public class EntryProcessorExamples {
1720

1821
/**
19-
* Demonstrates incrementing a value in a {@link Cache} using
22+
* Demonstrates incrementing a value in a {@link javax.cache.Cache} using
2023
* an {@link EntryProcessor}.
2124
*/
2225
@Test

src/test/java/javax/cache/StatisticsExample.java renamed to src/test/java/javax/cache/core/StatisticsExample.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
package javax.cache;
1+
package javax.cache.core;
22

3+
import javax.cache.Cache;
4+
import javax.cache.CacheManager;
5+
import javax.cache.Caching;
36
import javax.cache.configuration.MutableConfiguration;
47
import javax.cache.expiry.AccessedExpiryPolicy;
58
import javax.cache.spi.CachingProvider;
@@ -26,8 +29,7 @@ public void accessStatistics() throws MalformedObjectNameException,
2629

2730
MutableConfiguration<String, Integer> config =
2831
new MutableConfiguration<String, Integer>();
29-
config.setStoreByValue(false)
30-
.setTypes(String.class, Integer.class)
32+
config.setTypes(String.class, Integer.class)
3133
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
3234
.setStatisticsEnabled(true);
3335

src/test/java/javax/cache/TypeSafety.java renamed to src/test/java/javax/cache/core/TypeSafety.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
package javax.cache;
1+
package javax.cache.core;
22

33
import org.junit.Test;
44

5+
import javax.cache.Cache;
6+
import javax.cache.CacheManager;
7+
import javax.cache.Caching;
58
import javax.cache.configuration.MutableConfiguration;
69
import javax.cache.spi.CachingProvider;
710

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/**
2+
* Copyright (c) 2011-2013 Terracotta, Inc.
3+
* Copyright (c) 2011-2013 Oracle and/or its affiliates.
4+
*
5+
* All rights reserved. Use is subject to license terms.
6+
*/
7+
8+
/**
9+
* <p/>
10+
* This package contains sample code for javax.cache set up as JUnit tests.
11+
* <p/>
12+
* It only uses required features of the specification.
13+
*
14+
* @author Greg Luck
15+
* @since 1.0
16+
*/
17+
package javax.cache.core;
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
package javax.cache.optional;
2+
3+
import org.junit.Test;
4+
5+
import javax.cache.Cache;
6+
import javax.cache.CacheManager;
7+
import javax.cache.Caching;
8+
import javax.cache.configuration.MutableConfiguration;
9+
import javax.cache.expiry.AccessedExpiryPolicy;
10+
import javax.cache.spi.CachingProvider;
11+
12+
import static javax.cache.expiry.Duration.ONE_HOUR;
13+
import static junit.framework.Assert.assertNull;
14+
import static org.junit.Assert.assertEquals;
15+
16+
17+
/**
18+
*
19+
* @author Greg Luck
20+
*/
21+
public class CacheDemos {
22+
23+
24+
@Test
25+
public void simpleAPITypeEnforcement() {
26+
27+
//resolve a cache manager
28+
CachingProvider cachingProvider = Caching.getCachingProvider();
29+
CacheManager cacheManager = cachingProvider.getCacheManager();
30+
31+
//configure the cache
32+
MutableConfiguration<String, Integer> config = new MutableConfiguration<>();
33+
//uses store by reference
34+
config.setStoreByValue(false)
35+
.setTypes(String.class, Integer.class)
36+
.setExpiryPolicyFactory(AccessedExpiryPolicy.factoryOf(ONE_HOUR))
37+
.setStatisticsEnabled(true);
38+
39+
//create the cache
40+
cacheManager.createCache("simpleOptionalCache", config);
41+
42+
//... and then later to get the cache
43+
Cache<String, Integer> cache = Caching.getCache("simpleOptionalCache",
44+
String.class, Integer.class);
45+
46+
//use the cache
47+
String key = "key";
48+
Integer value1 = 1;
49+
cache.put("key", value1);
50+
Integer value2 = cache.get(key);
51+
assertEquals(value1, value2);
52+
53+
cache.remove("key");
54+
assertNull(cache.get("key"));
55+
}
56+
57+
58+
59+
60+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/**
2+
* Copyright (c) 2011-2013 Terracotta, Inc.
3+
* Copyright (c) 2011-2013 Oracle and/or its affiliates.
4+
*
5+
* All rights reserved. Use is subject to license terms.
6+
*/
7+
8+
/**
9+
* <p/>
10+
* This package contains sample code for javax.cache set up as JUnit tests.
11+
* <p/>
12+
* It uses required and optional features of the specification.
13+
*
14+
* @author Greg Luck
15+
* @since 1.0
16+
*/
17+
package javax.cache.optional;

0 commit comments

Comments
 (0)