Update state of given prediction to success. Create a function data
        resource for the given result file and associate it with the model run.

        Parameters
        ----------
        experiment_id : string
            Unique experiment identifier
        run_id : string
            Unique model run identifier
        result_file : string
            Path to model run result file

        Returns
        -------
        ModelRunHandle
            Handle for updated model run or None is prediction is undefined

def experiments_predictions_update_state_success(self, experiment_id, run_id, result_file):
        """Update state of given prediction to success. Create a function data
        resource for the given result file and associate it with the model run.

        Parameters
        ----------
        experiment_id : string
            Unique experiment identifier
        run_id : string
            Unique model run identifier
        result_file : string
            Path to model run result file

        Returns
        -------
        ModelRunHandle
            Handle for updated model run or None is prediction is undefined
        """
        # Get prediction to ensure that it exists
        model_run = self.experiments_predictions_get(experiment_id, run_id)
        if model_run is None:
            return None
        # Create new resource for model run result
        funcdata = self.funcdata.create_object(result_file)
        # Update predition state
        return self.predictions.update_state(
            run_id,
            modelrun.ModelRunSuccess(funcdata.identifier)
        )