From 97819de9f2bcb33023e06a8427674e7b877634df Mon Sep 17 00:00:00 2001 From: oblonski <4sschroeder@gmail.com> Date: Tue, 25 Feb 2014 08:12:40 +0100 Subject: [PATCH] added javadoc --- .../core/algorithm/state/StateManager.java | 42 ++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/jsprit-core/src/main/java/jsprit/core/algorithm/state/StateManager.java b/jsprit-core/src/main/java/jsprit/core/algorithm/state/StateManager.java index 03d11612..1ac74fe3 100644 --- a/jsprit-core/src/main/java/jsprit/core/algorithm/state/StateManager.java +++ b/jsprit-core/src/main/java/jsprit/core/algorithm/state/StateManager.java @@ -46,7 +46,15 @@ import jsprit.core.problem.solution.route.state.StateFactory; import jsprit.core.problem.solution.route.state.StateFactory.State; import jsprit.core.problem.solution.route.state.StateFactory.StateId; - +/** + * Manages states. + * + *

Some condition, rules or constraints are stateful. This StateManager manages these states, i.e. it offers + * methods to add, store and retrieve states based on vehicle-routes and tour-activities. + * + * @author schroeder + * + */ public class StateManager implements RouteAndActivityStateGetter, IterationStartsListener, RuinListener, InsertionStartsListener, JobInsertedListener, InsertionEndsListener { static class States_ { @@ -93,6 +101,11 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart private boolean updateTWs = false; + /** + * @deprecated use StateManager(VehicleRoutingTransportCosts tpcosts) instead. + * @param vrp + */ + @Deprecated public StateManager(VehicleRoutingProblem vrp) { super(); this.routingCosts = vrp.getTransportCosts(); @@ -122,21 +135,48 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart addDefaultStates(); } + /** + * @deprecated use the generic methode addDefaultRouteState(StateId stateId, Class type, T defaultState) instead. + * @param stateId + * @param defaultState + */ @Deprecated public void addDefaultRouteState(StateId stateId, State defaultState){ addDefaultRouteState(stateId, State.class, defaultState); } + /** + * Generic method to add a default route state. + * + *

for example if you want to store 'maximum weight' at route-level, the default might be zero and you + * can add the default simply by coding
+ * addDefaultRouteState(StateFactory.createStateId("max_weight"), Integer.class, 0) + * + * @param stateId + * @param type + * @param defaultState + */ public void addDefaultRouteState(StateId stateId, Class type, T defaultState){ if(StateFactory.isReservedId(stateId)) StateFactory.throwReservedIdException(stateId.toString()); defaultRouteStates_.put(stateId, type.cast(defaultState)); } + /** + * @deprecated use generic method addDefaultActivityState(StateId stateId, Class type, T defaultState) + * @param stateId + * @param defaultState + */ @Deprecated public void addDefaultActivityState(StateId stateId, State defaultState){ addDefaultActivityState(stateId, State.class, defaultState); } + /** + * + * @param stateId + * @param type + * @param defaultState + */ public void addDefaultActivityState(StateId stateId, Class type, T defaultState){ if(StateFactory.isReservedId(stateId)) StateFactory.throwReservedIdException(stateId.toString()); defaultActivityStates_.put(stateId, type.cast(defaultState));