Completed
Push — master ( e33655...3af302 )
by Juan José
15s queued 13s
created

ospd.command.registry   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 9
dl 0
loc 40
rs 10
c 0
b 0
f 0
wmc 3

3 Functions

Rating   Name   Duplication   Size   Complexity  
A remove_command() 0 4 1
A get_commands() 0 4 1
A register_command() 0 4 1
1
# Copyright (C) 2020 Greenbone Networks GmbH
2
#
3
# SPDX-License-Identifier: GPL-2.0-or-later
4
#
5
# This program is free software; you can redistribute it and/or
6
# modify it under the terms of the GNU General Public License
7
# as published by the Free Software Foundation; either version 2
8
# of the License, or (at your option) any later version.
9
#
10
# This program is distributed in the hope that it will be useful,
11
# but WITHOUT ANY WARRANTY; without even the implied warranty of
12
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
# GNU General Public License for more details.
14
#
15
# You should have received a copy of the GNU General Public License
16
# along with this program; if not, write to the Free Software
17
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18
19
from typing import List
20
21
__COMMANDS = []
22
23
24
def register_command(command: object) -> None:
25
    """ Register a command class
26
    """
27
    __COMMANDS.append(command)
28
29
30
def remove_command(command: object) -> None:
31
    """ Unregister a command class
32
    """
33
    __COMMANDS.remove(command)
34
35
36
def get_commands() -> List[object]:
37
    """ Return the list of registered command classes
38
    """
39
    return __COMMANDS
40