def TopicTargetList(topic=None, data=None, srv=None):
    """
    Custom function to compute list of topic targets based on MQTT topic and/or transformation data.
    Obtains MQTT topic, transformation data and service object.
    Returns list of topic target identifiers.
    """
    if srv is not None:
        srv.logging.debug('topic={topic}, data={data}, srv={srv}'.format(**
            locals()))
    targets = ['log:debug']
    if 'condition' in data:
        if data['condition'] == 'sunny':
            targets.append('file:mqttwarn')
        elif data['condition'] == 'rainy':
            targets.append('log:warn')
    return targets
