24 lines
778 B
Python
24 lines
778 B
Python
import re
|
|
|
|
|
|
class InvalidDataObjectException(Exception):
|
|
def __init__(self, message):
|
|
super().__init__(message)
|
|
|
|
class DataObject(object):
|
|
invalidChars = re.compile("[#+/\s]")
|
|
|
|
def __init__(self, serverName, nameSpaceIndex, variableName, value):
|
|
self.serverName = serverName
|
|
self.nameSpaceIndex = nameSpaceIndex
|
|
self.variableName = variableName
|
|
self.value = value
|
|
|
|
def isValid(self):
|
|
return (not (DataObject.invalidChars.search(self.serverName) or DataObject.invalidChars.search(self.variableName))) and (type(self.nameSpaceIndex) == int)
|
|
|
|
def getTopicPost(self):
|
|
return self.serverName + '/' + str(self.nameSpaceIndex) + '/' + self.variableName
|
|
|
|
def getPayload(self):
|
|
return self.value |