{"shas":[["44c56d7059e774be9ca02ba529c326078ce10e4e","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Merge branch 'master' into delegation","Christian Edward Gruber"],["0ff3da62739d950e03960db16c66c892517c58f5","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","narrow exception catching and test for the right error.","Christian Edward Gruber"],["f5db6b0a394664396f7c89c9a5ce802ec8ad9dbf","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Unused imports.","Christian Edward Gruber"],["9450cc5f10c358dd8950f98a96404dcc0d8d5ef9","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","add tests to suite and make sure everything has @RunWith","Christian Edward Gruber"],["59b68176d126c95199b3fc059853e6c3e5da40c6","aa743a0aaec8f7d7a1f01442503957f4d7a2d634@saff.net","Merge pull request #14 from cgruber/cleanup\n\nSome minor cleanup.","David Saff"],["c157ddd5e6d7b732adb52938f4caffdd9b42dc86","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","unneeded import.","Christian Edward Gruber"],["9c90050a081e1771a6f761cd3099b47d77c66213","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Add all tests to AllTests.","Christian Edward Gruber"],["8d1f8bf58bf2f813526c017de4867809a91699ec","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Better delegation approach - inspired by dsaff's recommendation to eliminate construction games.  Result is vastly cleaner to implement an extension, and the code is simpler, and tons of exception handling removed. w00t.","Christian Edward Gruber"],["f2f891408d2d5d69fc89de7c159bc6542f9934f9","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Rename DelegatedSubjectFactory to DelegatedVerb, since it's a Verb.  Seriously.  I must have been smoking crack when I named that file.","Christian Edward Gruber"],["cb0028195071d454da04cc842061ee48844f3b12","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","SubjectFactory.that() -> SubjectFactory.getSubject() since that's what it does.","Christian Edward Gruber"],["e86c2dbcb668c2e166cf57256feef8041d61c2f9","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Per dsaff, we dont' really need a FooSubjectFactory now, since this is a lightweight impl of an interface and can be an anonymous impl.  So the example code removes a concrete impl now.","Christian Edward Gruber"],["1faa8b6f38ceeed2763c48095234ff9f422a5888","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","_for() -> about(), since that's hella-awesome.","Christian Edward Gruber"],["9b09e8ee8a50cd5ce5474f12e4dc4f9058d6d3c8","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","rename that() param to 'target'","Christian Edward Gruber"],["c4cf6e7cb964a8b2faf61040b87bb08463675b62","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Remove unused imports.","Christian Edward Gruber"],["46f8c847de468bbfd838def5cb875caf6e5fbbc6","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Move declaration of FOO constant (SubjectFactory<Foo>) to FooSubject itself, to promote the pattern.","Christian Edward Gruber"],["6c56ef2b3ed8e367990049c9fba023bb0e2a3ca6","89963e5f414ff46717b4f2568b82f3683394972b@gmail.com","Merge from master branch.","Christian Edward Gruber"],["9fcd6c88633976d6c7fb3445a35efbe6f07051d2","aa743a0aaec8f7d7a1f01442503957f4d7a2d634@saff.net","Merge pull request #13 from cgruber/delegation\n\nAdds a delegation mechanism for extension for new Subjects","David Saff"],["e5f193c7066bc3802d68ef8237e71d019c05152a","a57de201fb614bb115be2fbb0a0480ec8d2ea590@google.com","david does duplicates","David Beaumont"],["67ba12fe5e2e2dd365eda302f64917dca0bbab06","a57de201fb614bb115be2fbb0a0480ec8d2ea590@google.com","Adding tests for null in collections","David Beaumont"],["12606b107fbf4799d5b00720ad492f34f1cc5a98","a57de201fb614bb115be2fbb0a0480ec8d2ea590@google.com","fixed message for duplicate missing elements","David Beaumont"]],"ref":"refs/heads/bettererror","size":27,"head":"a75001af14eb0673772272c6473f7881881466b1","push_id":35579257}