public override bool BuildSteps(IBuildBridgeSteps steps, BuildOptions options, string args, Action generateCallback, Action buildCallback, Action deployCallback)
        {
            // put together the last callback (invoking deploy step)
            Action buildStepCallback = () =>
            {
                if ((steps & IBuildBridgeSteps.Deploy) == IBuildBridgeSteps.Deploy)
                {
                    UnityEngine.Debug.Log("Deploy...");
                    this.Deploy(deployCallback);
                }
                if (buildCallback != null)
                {
                    buildCallback.Invoke();
                }
            };
            // put together the second callback (invoking build step)
            Action generateStepCallback = () =>
            {
                if ((steps & IBuildBridgeSteps.Build) == IBuildBridgeSteps.Build)
                {
                    this.Build(args, buildStepCallback);
                }
                if (generateCallback != null)
                {
                    generateCallback.Invoke();
                }
            };
            // put together the initial callback (invoking generate step)
            Action callback = () =>
            {
                if ((steps & IBuildBridgeSteps.Generate) == IBuildBridgeSteps.Generate)
                {
                    this.Generate(options, generateStepCallback);
                }
            };

            callback.Invoke();

            return(true);
        }
 public abstract bool BuildSteps(IBuildBridgeSteps steps, BuildOptions options, string args, Action generateCallback, Action buildCallback, Action deployCallback);
 public override bool BuildSteps(IBuildBridgeSteps steps, BuildOptions options, string args, Action generateCallback, Action buildCallback, Action deployCallback)
 {
     return(false);
 }