Esempio n. 1
0
 def mappings(cls):
     return {
         cls.__type__: mappings.for_type(
             cls.__type__,
             mappings.properties(mappings.type_mapping("location", "geo_point")),
             mappings.dynamic_templates([mappings.EXACT]),
         )
     }
Esempio n. 2
0
 def mappings(cls):
     return {
         cls.__type__ : mappings.for_type(
             cls.__type__,
                 mappings.properties(mappings.type_mapping("location", "geo_point")),
                 mappings.dynamic_templates(
                 [
                     mappings.EXACT,
                 ]
             )
         )
     }
Esempio n. 3
0
                    }
                }
            ]
        }
    }
}
MAPPINGS['advert'] = {'advert':MAPPINGS['account']['account']}
"""

MAPPINGS = {
    "account" : mappings.for_type(
        "account",
            mappings.properties(mappings.type_mapping("loc", "geo_point")),
            mappings.dynamic_templates(
            [
                mappings.EXACT,
                mappings.dynamic_type_template("geo", "loc", mappings.make_mapping("geo_point"))
            ]
        )
    ),
    "advert" : mappings.for_type(
        "advert",
            mappings.properties(mappings.type_mapping("loc", "geo_point")),
            mappings.dynamic_templates(
            [
                mappings.EXACT,
                mappings.dynamic_type_template("geo", "loc", mappings.make_mapping("geo_point"))
            ]
        )
    )
}
Esempio n. 4
0
                            "fields" : {
                                "{name}" : {"type" : "{dynamic_type}", "index" : "analyzed", "store" : "no"},
                                "exact" : {"type" : "{dynamic_type}", "index" : "not_analyzed", "store" : "yes"}
                            }
                        }
                    }
                }
            ]
        }
    }
}
MAPPINGS['account'] = {'account':MAPPINGS['record']['record']}
MAPPINGS['pages'] = {'pages':MAPPINGS['record']['record']}
"""
MAPPINGS = {
    "song_store" : mappings.for_type("song_store", mappings.dynamic_templates([mappings.EXACT])),
    "version_store" : mappings.for_type("version_store", mappings.dynamic_templates([mappings.EXACT])),
    "singer_store" : mappings.for_type("singer_store", mappings.dynamic_templates([mappings.EXACT])),
    "song2song" : mappings.for_type("song2song", mappings.dynamic_templates([mappings.EXACT])),
    "song2version" : mappings.for_type("song2version", mappings.dynamic_templates([mappings.EXACT])),
    "singer2version" : mappings.for_type("singer2version", mappings.dynamic_templates([mappings.EXACT])),
    "song" : mappings.for_type(
        "song", 
            mappings.properties(mappings.type_mapping("canonical_location", "geo_point")),
            mappings.dynamic_templates(
            [
                mappings.EXACT, 
                mappings.dynamic_type_template("geo", "canonical_location", mappings.make_mapping("geo_point"))
            ]
        )
    ),
Esempio n. 5
0
# Can people register publicly? If false, only the superuser can create new accounts
PUBLIC_REGISTER = False

# can anonymous users get raw JSON records via the query endpoint?
PUBLIC_ACCESSIBLE_JSON = True 


# ========================
# MAPPING SETTINGS

# a dict of the ES mappings. identify by name, and include name as first object name
# and identifier for how non-analyzed fields for faceting are differentiated in the mappings
FACET_FIELD = ".exact"

MAPPINGS = {
    "account" : mappings.for_type("account", mappings.dynamic_templates([mappings.EXACT])),
    "register" : mappings.for_type("register", mappings.dynamic_templates([mappings.EXACT])),
    "statistics" : mappings.for_type("statistics", mappings.dynamic_templates([mappings.EXACT])),
    "history" : mappings.for_type("history", mappings.dynamic_templates([mappings.EXACT]))
}

# ========================
# QUERY SETTINGS

# list index types that should not be queryable via the query endpoint
NO_QUERY = ['account']

# list additional terms to impose on anonymous users of query endpoint
# for each index type that you wish to have some
# must be a list of objects that can be appended to an ES query.bool.must
# for example [{'term':{'visible':True}},{'term':{'accessible':True}}]
Esempio n. 6
0
SMTP_USER = None
SMTP_PASS = None


# ========================
# MAPPING SETTINGS

# a dict of the ES mappings. identify by name, and include name as first object name
# and identifier for how non-analyzed fields for faceting are differentiated in the mappings
FACET_FIELD = ".exact"
MAPPINGS = {
    "article" : mappings.for_type(
        "article",
            mappings.dynamic_templates(
            [
                mappings.EXACT,
            ]
        )
    )
}

# ========================
# QUERY SETTINGS

# list index types that should not be queryable via the query endpoint
NO_QUERY = []
SU_ONLY = ["account"]

# list additional terms to impose on anonymous users of query endpoint
# for each index type that you wish to have some
# must be a list of objects that can be appended to an ES query.bool.must
Esempio n. 7
0
ELASTIC_SEARCH_HOST = "http://ooz.cottagelabs.com:9200"
ELASTIC_SEARCH_INDEX = "wna"

from esprit import mappings
ELASTIC_SEARCH_MAPPINGS = {
    "reactor" : mappings.for_type(
        "reactor",
            mappings.properties(mappings.type_mapping("location", "geo_point")),
            mappings.dynamic_templates(
            [
                mappings.EXACT,
            ]
        )
    )
}

QUERY_ROUTE = {
    "query" : {
        "reactor" : {
            "auth" : False,
            "role" : None,
            "filters" : [],
            "dao" : "service.dao.ReactorDAO"
        }
    }
}

QUERY_FILTERS = {}