lab 4: shared: updated JsonFileStorePersistentMapStoreManager to use the
Validator.notNull check on the parameters to the constructor.
lab 4: shared: made InMemoryPersistentUserDetailsManager extend
JsonFileStorePersistentMapStorageManager and rewrote UserDetailsService
and UserDetailsManager required methods to use the StorageManager defined
methods. Tested in the shop site and user registration/authentication still
works properly.
lab 4: shared: added javadoc for PropertyAccessor methods and updated javadoc
for JsonFileStorePersistentMapStorageManager and InMemoryPersistentUser-
DetailsManager, as well as implementing the require null checks. Also added
a proof-of-concept tests file for the Validator in apache commons lang3.
lab 4: shared: renamed HasID to HasId so that EL expressions can find the 'id'
property; shop: change Order.orderID to Order.id and made Order implement
the HasId aspect, updated references to Order.id.
lab 4: shared: added setId method to HasId aspect
lab 4: shop: added @Override annotations to get/setId methods in Order
lab 4: shop: made OrderManager extend JsonFileStorePersistentMapStorage-
Manager and updated invokations of the old interface to use the
StorageManager interface
lab 4: shared: updated JsonFileStorePersistentMapStorageManager to require
a PropertyAccessor that will accept accessors parameters with super classes
or interfaces of the item type; shop: updated OrderManager to prepare a
PropertyAccessor parameterized with HasId<Long>
lab 4: shared: added IDAccessor; shop: updated OrderManager to use
IDAccessor
lab 4: shared: added IDGenerator and IncreasingLongIDGeneratorStrategy;
shop: updated OrderManager to use the IDGenerator with the
IncreasingLongIDGeneratorStrategy
lab 4: shared: added default seedID and single-arg constructor to
IncreasingLongIDGeneratorStrategy; shop: updated OrderManager to use the
single-arg constructor for the strategy and removed class constant
lab 4: shared: added IDGeneratingIDAccessor, changed JsonFileStorePersistent-
MapStorageManager to initialize the keyAccessor via a method call instead
of requiring it as a constructor parameter since 'this' references cannot
be used in super constructor calls, updated InMemoryPersistentUserDetails-
Manager to implement the new initializeKeyAccessor method; shop: updated
OrderManager to use the IDGeneratingIDAccessor and implement the
initializeKeyAccessor method, and removed manual setting of order ID in
OrdersController.
lab 4: shop: removed commented-out code and updated javadoc on
OrderManager constructor.
lab 4: shared: updated javadoc and added section comments to InMemory-
PersistentUserDetailsManager.
lab 4: shop: changed DeliveryBid to implement the HasId aspect and updated
references to 'bidID' in the jsp files to 'id', I'm fairly confident it
works, but I don't want to take the time to test out setting up a user
(driver) and initializing their position
lab 4: shop: updated DeliveryBidManager to extend JsonFileStorePersistentMap
StorageManager and updated invocation of the API in EventDispatchController
and OrderController.
lab 4: shop: removed unused import from OrdersController