예제 #1
0
        public override IAction CreateAction(string builderID, string keyID, BaseViewModel viewModel = null, ILogger logger = null)
        {
            //try to get the registered builder
            IActionBuilder builder = null;

            try
            {
                builder = _builders[builderID];
            }
            catch
            {
                return(null);
            }

            // Build the action
            if (!builder.Locker.IsLock)
            {
                return(builder.BuildMainAction(keyID));
            }
            else
            {
                return(builder.BuildAlternativeActionWhenFactoryIsLock(keyID));
            }
        }