From 5fb02f63c8b1d6307f4c0bbad9a89b4fbcb1c7f8 Mon Sep 17 00:00:00 2001 From: utensil Date: Fri, 2 Jan 2015 20:18:28 +0800 Subject: [PATCH] Code clean up, add notes and todos --- .../org/numenta/nupic/encoders/DateEncoder.java | 14 +++++++++----- .../numenta/nupic/encoders/DateEncoderTest.java | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/numenta/nupic/encoders/DateEncoder.java b/src/main/java/org/numenta/nupic/encoders/DateEncoder.java index 81b51297..96047244 100644 --- a/src/main/java/org/numenta/nupic/encoders/DateEncoder.java +++ b/src/main/java/org/numenta/nupic/encoders/DateEncoder.java @@ -100,8 +100,7 @@ public class DateEncoder extends Encoder { protected Tuple timeOfDay; protected ScalarEncoder timeOfDayEncoder; - protected List childEncoders = new ArrayList(); - protected List customDaysList = new ArrayList(); + protected List customDaysList = new ArrayList<>(); // Currently the only holiday we know about is December 25 // holidays is a list of holidays that occur on a fixed date every year @@ -141,9 +140,12 @@ public void init() { // Adapted from MultiEncoder // TODO figure out why a initial EncoderTuple - encoders = new LinkedHashMap>(); + encoders = new LinkedHashMap<>(); encoders.put(new EncoderTuple("", this, 0), new ArrayList()); + // Note: The order of adding encoders matters, must be in the following + // season, dayOfWeek, weekend, customDays, holiday, timeOfDay + if(isValidEncoderPropertyTuple(season)) { seasonEncoder = ScalarEncoder.builder() .w((int) season.get(0)) @@ -414,10 +416,10 @@ public List getEncodedValues(Date inputData) { //TODO check null (if date is null, it acts like new DateTime()) if(inputData == null) { //TODO return a proper fallback value - return new ArrayList(); + return new ArrayList<>(); } - List values = new ArrayList(); + List values = new ArrayList<>(); DateTime date = new DateTime(inputData); @@ -503,6 +505,8 @@ public List getEncodedValues(Date inputData) { return values; } + //TODO Should delegate Encoder.getScalarNames() to Encoder.getScalarNames(null) ? + @Override public List getBucketValues(Class returnType) { return null; diff --git a/src/test/java/org/numenta/nupic/encoders/DateEncoderTest.java b/src/test/java/org/numenta/nupic/encoders/DateEncoderTest.java index a146f6d8..283e7eef 100644 --- a/src/test/java/org/numenta/nupic/encoders/DateEncoderTest.java +++ b/src/test/java/org/numenta/nupic/encoders/DateEncoderTest.java @@ -73,7 +73,7 @@ public void testDateEncoder() { assertNotNull(descs); // should be [("season", 0), ("day of week", 12), ("weekend", 19), ("time of day", 25)] - List expectedDescs = new ArrayList(Arrays.asList( + List expectedDescs = new ArrayList<>(Arrays.asList( new Tuple(2, "season", 0), new Tuple(2, "day of week", 12), new Tuple(2, "weekend", 19),