From f416ca6e7d71fc67ad71b086331e1b567a5f326a Mon Sep 17 00:00:00 2001
From: "Brian S. O'Neill" <bronee@gmail.com>
Date: Thu, 10 Apr 2008 15:23:41 +0000
Subject: Add propertyMap feature to Storable.

---
 src/main/java/com/amazon/carbonado/Storable.java                | 2 +-
 src/main/java/com/amazon/carbonado/gen/StorableGenerator.java   | 3 +--
 src/main/java/com/amazon/carbonado/gen/StorablePropertyMap.java | 3 +--
 3 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/amazon/carbonado/Storable.java b/src/main/java/com/amazon/carbonado/Storable.java
index 40372c4..5500f56 100644
--- a/src/main/java/com/amazon/carbonado/Storable.java
+++ b/src/main/java/com/amazon/carbonado/Storable.java
@@ -427,7 +427,7 @@ public interface Storable<S extends Storable<S>> {
      * values are boxed
      * @since 1.2
      */
-    //Map<String, Object> propertyMap();
+    Map<String, Object> propertyMap();
 
     /**
      * Returns an exact shallow copy of this object, including the state.
diff --git a/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java b/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java
index 9d3b4b4..cb60349 100644
--- a/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java
+++ b/src/main/java/com/amazon/carbonado/gen/StorableGenerator.java
@@ -1629,8 +1629,7 @@ public final class StorableGenerator<S extends Storable> {
         // Define reflection-like methods for manipulating properties by name.
         addGetPropertyValueMethod();
         addSetPropertyValueMethod();
-        // Keep hidden until it is decided that this feature is useful.
-        //addPropertyMapMethod();
+        addPropertyMapMethod();
 
         // Define serialization methods.
         addWriteToMethod();
diff --git a/src/main/java/com/amazon/carbonado/gen/StorablePropertyMap.java b/src/main/java/com/amazon/carbonado/gen/StorablePropertyMap.java
index e17dd01..cbf0d0b 100644
--- a/src/main/java/com/amazon/carbonado/gen/StorablePropertyMap.java
+++ b/src/main/java/com/amazon/carbonado/gen/StorablePropertyMap.java
@@ -41,8 +41,7 @@ import com.amazon.carbonado.info.StorableProperty;
  *
  * @author Brian S O'Neill
  */
-// Keep hidden until it is decided that this feature is useful.
-class StorablePropertyMap<S extends Storable> extends AbstractMap<String, Object> {
+public class StorablePropertyMap<S extends Storable> extends AbstractMap<String, Object> {
     private static final Map<Class, Set<String>> cPropertyNamesForType =
         new SoftValuedHashMap();
 
-- 
cgit v1.2.3