/**
 *  Copyright 2005-2016 Red Hat, Inc.
 *
 *  Red Hat licenses this file to you 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.
 */
package io.fabric8.kubernetes.api;

import io.fabric8.kubernetes.client.DefaultKubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClient;

/**
 * Triggers a build using the Java API
 */
public class TriggerBuild {
    public static void main(String... args) {
        if (args.length < 1) {
            System.out.println("Usage: buildConfigName namespace secret type");
            return;
        }
        String name = args[0];
        String namespace = "default";
        if (args.length > 1) {
            namespace = args[1];
        }

        KubernetesClient client = new DefaultKubernetesClient();

        try {
            //TODO: This is currently broken
            //String uuid = client.triggerBuildAndGetUuid(name, namespace);
            //System.out.println("Build triggered: got UUID: " + uuid);
        } catch (Exception e) {
            System.out.println("FAILED: " + e);
            e.printStackTrace();
        }
    }
}

@@ -782,16 +782,181 @@
 sClient;
+%0Aimport io.fabric8.openshift.api.model.WebHookTrigger;%0Aimport io.fabric8.openshift.client.DefaultOpenShiftClient;%0Aimport io.fabric8.openshift.client.OpenShiftClient;
 %0A%0A/**%0A *
@@ -1363,26 +1363,25 @@
         
-Kubernetes
+OpenShift
 Client c
@@ -1395,34 +1395,33 @@
  new Default
-Kubernetes
+OpenShift
 Client();%0A%0A 
@@ -1449,186 +1449,106 @@
     
-//TODO: This is currently broken%0A            //String uuid = client.triggerBuildAndGetUuid(name, namespace);%0A            //System.out.println(%22Build triggered: got UUID: %22 + uuid
+client.buildConfigs().inNamespace(namespace).withName(name).trigger(new WebHookTrigger(true, null)
 );%0A 

update to use trigger api in kube client