protected function registerCommands()
    {
        $namespace    =    __NAMESPACE__ . '\\Commands\\';
        $keyPrefix    =    'lockdown.commands.';
        $commands    =    [
            $keyPrefix . 'assign-perm-user'  =>    'AssignPermissionToUser',
            $keyPrefix . 'assign-role-perm'  =>    'AssignPermissionToRole',
            $keyPrefix . 'assign-role-user'  =>    'AssignRoleToUser',
            $keyPrefix . 'create-perm'       =>    'CreatePermission',
            $keyPrefix . 'create-role'       =>    'CreateRole',
            $keyPrefix . 'delete-permission' =>    'DeletePermission',
            $keyPrefix . 'delete-role'       =>    'DeleteRole',
            $keyPrefix . 'remove-perm-user'  =>    'RemovePermissionFromUser',
            $keyPrefix . 'remove-role-perm'  =>    'RemovePermissionFromRole',
            $keyPrefix . 'remove-role-user'  =>    'RemoveRoleFromUser',
            $keyPrefix . 'show-permissions'  =>    'ShowPermissions',
            $keyPrefix . 'show-roles'        =>    'ShowRoles',
        ];

        foreach ($commands as $key => $class) {
            $this->app->bind(
                $key,
                function ($app) use ($class, $namespace) {
                    $classNamespaceFull    =    $namespace . $class;
                    return new $classNamespaceFull($app['lockdown']);
                }
            );
        }

        $this->commands(array_keys($commands));
    }