'`default`: default value to be used if this property is not set.
If default is None, this property is required.
`class_inherit`: List of 2-tuples, (Service, \'blabla\'): must
set this property to the Service class with name
blabla. if (Service, None): must set this property
to the Service class with same name
`unmanaged`: ....
`help`: usage text
`no_slots`: do not take this property for __slots__
`fill_brok`: if set, send to broker. There are two categories:
FULL_STATUS for initial and update status,
CHECK_RESULT for check results
`retention`: if set, we will save this property in the retention files
`retention_preparation`: function, if set, will go this function before
being save to the retention data
`split_on_coma`: indicates that list property value should not be
splitted on coma delimiter (values conain comas that
we want to keep).
Only for the initial call:
conf_send_preparation: if set, will pass the property to this
function. It\'s used to \'flatten\' some dangerous
properties like realms that are too \'linked\' to
be send like that.
brok_transformation: if set, will call the function with the
value of the property when flattening
data is necessary (like realm_name instead of
the realm object).
override: for scheduler, if the property must override the
value of the configuration we send it
managed: property that is managed in Nagios but not in Shinken
merging: for merging properties, should we take only one or we can
link with ,'

def __init__(self, default=none_object, class_inherit=None, unmanaged=False, help='', no_slots=False, fill_brok=None, conf_send_preparation=None, brok_transformation=None, retention=False, retention_preparation=None, to_send=False, override=False, managed=True, split_on_coma=True, merging='uniq'):

    self.default = default
    self.has_default = (default is not none_object)
    self.required = (not self.has_default)
    self.class_inherit = (class_inherit or [])
    self.help = (help or '')
    self.unmanaged = unmanaged
    self.no_slots = no_slots
    self.fill_brok = (fill_brok or [])
    self.conf_send_preparation = conf_send_preparation
    self.brok_transformation = brok_transformation
    self.retention = retention
    self.retention_preparation = retention_preparation
    self.to_send = to_send
    self.override = override
    self.managed = managed
    self.unused = False
    self.merging = merging
    self.split_on_coma = split_on_coma
