Browse Source

Добавил metaclass в интерфейсы

devel
bashmak 9 years ago
parent
commit
e51a5f2a07
  1. 11
      agent/mod_mikrotik.py

11
agent/mod_mikrotik.py

@ -1,16 +1,17 @@
# -*- coding: utf-8 -*-
import socket
import binascii
from abc import ABCMeta
from hashlib import md5
from .core import BaseTransmitter, NasFailedResult, NasNetworkError
from mydefs import ping
from .structs import TariffStruct, AbonStruct, IpStruct, ShapeItem
from . import settings
#from djing.settings import DEBUG
from djing.settings import DEBUG
import re
DEBUG=False
#DEBUG=False
LIST_USERS_ALLOWED = 'DjingUsersAllowed'
LIST_USERS_BLOCKED = 'DjingUsersBlocked'
@ -141,7 +142,7 @@ class ApiRos:
return ret
class TransmitterManager(BaseTransmitter):
class TransmitterManager(BaseTransmitter, metaclass=ABCMeta):
def __init__(self, login=None, password=None, ip=None, port=None):
ip = ip or settings.NAS_IP
if not ping(ip):
@ -212,7 +213,7 @@ class TransmitterManager(BaseTransmitter):
return
class QueueManager(TransmitterManager):
class QueueManager(TransmitterManager, metaclass=ABCMeta):
# ищем правило по имени, и возвращаем всю инфу о найденном правиле
def find(self, name):
ret = self._exec_cmd(['/queue/simple/print', '?name=%s' % name])
@ -292,7 +293,7 @@ class QueueManager(TransmitterManager):
return self._exec_cmd(['/queue/simple/enable', '=.id=*' + q.sid])
class IpAddressListManager(TransmitterManager):
class IpAddressListManager(TransmitterManager, metaclass=ABCMeta):
def add(self, list_name, ip, timeout=None):
assert isinstance(ip, IpStruct)

Loading…
Cancel
Save