Ensure that the given property is writeable for the given Individual.
This makes sure that there is at least one Persona in the individual which has
property_name
in its Persona.writeable_properties
. If no such persona exists in the individual, a new one will be created and linked to the individual. (Note that due to the design of
the aggregator, this will result in the previous individual being removed and replaced by a new one with the new persona; listen to the
Individual.removed signal to see the replacement.)
It may not be possible to create a new persona which has the given property as writeable. In that case, a IndividualAggregatorError.NO_PRIMARY_STORE or IndividualAggregatorError.PROPERTY_NOT_WRITEABLE error will be thrown.
This method is safe to call multiple times concurrently, although concurrent calls for the same individual may result in duplicate personas being created.
individual |
the individual for which |
property_name |
the name of the property which needs to be writeable (this should be in lower case using hyphens, e.g. “web-service-addresses”) |
a persona (new or existing) which has the given property as writeable |
IndividualAggregatorError.NO_PRIMARY_STORE |
if no primary store was configured for this individual aggregator |
IndividualAggregatorError.PROPERTY_NOT_WRITEABLE |
if the given |
IndividualAggregatorError |
if adding a new persona (using IndividualAggregator.add_persona_from_details) failed, or if linking personas (using IndividualAggregator.link_personas) failed |
0.6.2