/**
 * Licensed under the Apache License, Version 2.0 (the "License"); you may
 * not use this file except in compliance with the License. You may obtain
 * a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations
 * under the License.
 */

(function () {
    'use strict';

    angular.module('gbpui.group-member')
        .config(launchInstanceServicePatcher);

    launchInstanceServicePatcher.$inject = ['$provide'];

    function launchInstanceServicePatcher($provide) {
        $provide.decorator(
            'horizon.dashboard.project.workflow.launch-instance.modal.service',
            ['$delegate', 'gbpui.group-member.launch-context.service', function(
                $delegate, launchContextService
            ) {

                var open = $delegate.open;
                $delegate.open = function(launchContext) {
                    angular.extend(launchContextService.launchContext,
                        launchContext);
                    return open(launchContext);
                };

                return $delegate
            }]
        );
    }
})();