/** * It returns the AppEngine uRL used by this experiment for making its goals persistent. * * AppEngine uses different URLs for different types of experiments and * different kinds of goals. This function simplifies the process of * obtaining the appropriate URL. * * @param NelioABGoal $goal the goal that has to be made persistent. * * @return string the specific value for automatically stopping the experiment. * * @since 1.4.0 */ public function get_url_for_making_goal_persistent($goal) { $exp_url_fragment = $this->get_exp_kind_url_fragment(); switch ($goal->get_kind()) { case NelioABGoal::ALTERNATIVE_EXPERIMENT_GOAL: default: $type = 'alternativeexp'; } if ($goal->get_id() < 0) { $url = sprintf(NELIOAB_BACKEND_URL . '/exp/%1$s/%2$s/goal/%3$s', $exp_url_fragment, $this->get_id(), $type); } else { if ($goal->has_to_be_deleted()) { $action = 'delete'; } else { $action = 'update'; } $url = sprintf(NELIOAB_BACKEND_URL . '/goal/%2$s/%1$s/%3$s', $goal->get_id(), $type, $action); } return $url; }
/** * PHPDOC * * @param NelioABExperiment $exp PHPDOC * * @return NelioABAltExpGoal PHPDOC * * @sine PHPDOC */ public function __construct($exp) { parent::__construct($exp); $this->set_kind(NelioABGoal::ALTERNATIVE_EXPERIMENT_GOAL); $this->actions = array(); }