public function createOptionList()
    {
        //Get the options list
        if (self::GET_IC_FROM_CUSTOM == $this->getICFrom) {
            //If custom, assume that the options handler will full handle it
            $optionList = $this->optionHandler->getList($this->getId());
            if (null === $optionList) {
              throw new \Exception("Input control " . $this->getId() . " not defined with option default_input_options_source set to Custom");
            }
        } elseif (self::GET_IC_FROM_FALLBACK == $this->getICFrom) {
            //If fallback, check if the options handler returns null (doesnt handle) and then make use of the jasper method
            $optionList = $this->optionHandler->getList($this->getId());
            if (null === $optionList) {
                $optionList = $this->getOptionListFromJasper();
            }
        } elseif (self::GET_IC_FROM_JASPER == $this->getICFrom) {
            //If jasper, get the options from the jasper server
            $optionList = $this->getOptionListFromJasper();
        } else {
            throw new \Exception(self::MESSAGE_INVALID_ICFROM . $this->getICFrom);
        }

        //Return the array of options
        return $optionList;
    }