 (gen-class 
  :name ^{PlanningEntity {}} schedule.types.Event
  :prefix "event-"
+ :init init
+ :state state
  :methods [[^{PlanningVariable {"valueRangeProviderRefs" ["slotRange"]}} getSlot [] Object]
            [setSlot [Object] void]])
 
+(defn event-init []
+  [[] (ref {})])
+
 (defn event-getSlot [this]
-  nil)+  (getValue this :slot))
+
+(defn event-setSlot [this item]
+  (setValue this :slot item))
   [org.optaplanner.core.api.score.buildin.hardsoft HardSoftScore]
   [schedule HardSoftSolution]
   [java.util ArrayList]))

(gen-class 
 :name ^{PlanningSolution {}} schedule.types.ScheduleSolution

(defn solution-getProblemFacts [this]
  (ArrayList.))

(defn solution-setScore [this score]
  (setValue this :score score))

