Ejemplo n.º 1
0
def generate_event_id(operation,feature_type,option=None):
    array = [operation,feature_type]
    if option!=None:
        option = ensure_list(option)
        for o in option:
            array.append(str(o))
    return "::".join(array)
Ejemplo n.º 2
0
def band(db,feature_type,data):
    print "function: band"
    if not data.has_key('group'):
        return my_classifier.error_json("'group' must be set.")
    group_name = data['group']
    
    selector = data['selector']
    
    collections = db[feature_type]

    samples = collections.find(selector)
    #print samples
    if samples.count() == 0:
        return my_classifier.error_json("ERROR: no samples are hit.")
    for s in samples:
        groups = s['group']
        if not group_name in groups:
            groups = ensure_list(groups)
            groups.append(group_name)
            _id = s['_id']
            collections.update_one({"_id":_id},{"$set":{'group':groups}})
    result = my_classifier.success_json()
    result['event'] = {'_id':generate_event_id('band',feature_type,[group_name,json.dumps(selector)])}
    return result