protected final void setUserCommands(UserCommand... commands) {
        mCurrentState.setUserCommands(Arrays.asList(commands));
        mServiceHandler.removeCallbacks(mPublishStateRunnable);
        mServiceHandler.post(mPublishStateRunnable);
    }
protected final void setUserCommands ( UserCommand ... commands ) { mCurrentState . setUserCommands ( Arrays . asList ( commands ) ) ; mServiceHandler . removeCallbacks ( mPublishStateRunnable ) ; mServiceHandler . post ( mPublishStateRunnable ) ; }
Sets the list of available user-visible commands for the source. Commands can be built-in,
such as {@link #BUILTIN_COMMAND_ID_NEXT_ARTWORK}, or custom-defined. Custom commands must
have identifiers below {@link #MAX_CUSTOM_COMMAND_ID}.

<p> If you're only using built-in commands, {@link #setUserCommands(int...)} is preferred.

@param commands the new set of user-visible commands the source supports.

@see #BUILTIN_COMMAND_ID_NEXT_ARTWORK
@see #MAX_CUSTOM_COMMAND_ID