12 data_service_factory_i& services,
16 , _account_service(services.account_service())
17 , _dprops_service(services.dynamic_global_property_service())
19 , _game_service(services.game_service())
20 , _virt_op_emitter(virt_op_emitter)
32 FC_ASSERT(_game_service.
is_exists(op.
uuid),
"Game with uuid '${g}' doesn't exist", (
"g", op.
uuid));
35 auto old_status = game.
status;
37 "Cannot change the start time when game is finished");
39 auto ordered_pair = std::minmax(game.original_start_time, op.
start_time);
40 FC_ASSERT(ordered_pair.second - ordered_pair.first <= SCORUM_BETTING_START_TIME_DIFF_MAX,
41 "Cannot change start time more than ${1} seconds",
42 (
"1", SCORUM_BETTING_START_TIME_DIFF_MAX.to_seconds()));
53 if (old_status == game_status::started)
time_point_sec start_time
time_point_sec auto_resolve_time
void do_apply(const operation_type &op)
update_game_start_time_evaluator(data_service_factory_i &, betting_service_i &, database_virtual_operations_emmiter_i &)
virtual void check_account_existence(const account_name_type &, const optional< const char * > &context_type_name=optional< const char * >()) const =0
virtual void update(const modifier_type &modifier)=0
virtual bool is_betting_moderator(const account_name_type &account_name) const =0
virtual void cancel_bets(uuid_type game_uuid)=0
virtual void push_virtual_operation(const operation &op)=0
virtual fc::time_point_sec head_block_time() const =0
virtual const game_object & get_game(int64_t game_id) const =0
virtual bool is_exists(int64_t game_id) const =0
This operation updates game start time.
time_point_sec start_time
game start time
account_name_type moderator
moderator account name
uuid_type uuid
Universal Unique Identifier which is specified during game creation.