예제 #1
0
        /// <summary>
        /// Gets a new instance of an <seealso cref="BaseStreamDeckAction"/> registered with a UUID
        /// of <paramref name="actionUUID"/>. This instance <strong>will not</strong> be stored or managed,
        /// and cannot be reused.
        /// </summary>
        /// <returns>A new instance of the action</returns>
        /// <param name="actionUUID">The UUID of the action type which is to be instantiated</param>
        /// <remarks>
        /// Throws a <exception cref="ActionNotRegisteredException" /> exception if there is no action with
        /// a UUID of <paramref name="actionUUID"/> registered.
        /// </remarks>
        public BaseStreamDeckAction GetAction(ConnectionManager connectionManager, string actionUUID)
        {
            this._Logger?.LogTrace($"{nameof(ActionManager)}.{nameof(GetAction)}(string)");

            return(this.CreateActionInstanceByUUID(connectionManager, actionUUID));
        }
예제 #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="T:StreamDeckLib.ActionManager"/> class.
 /// </summary>
 /// <param name="logger">An instance of a logger (<see cref="ILogger"/> class.</param>
 public ActionManager(ConnectionManager manager, ILogger logger = null) : this()
 {
     this._Logger            = logger ?? NullLoggerFactory.Instance.CreateLogger(nameof(ActionManager));
     this._ConnectionManager = manager;
 }