def get_entities(self, ids_only=False, entity_id=None, search=None, entity_definition_keyname=None, dataproperty=None, limit=None, full_definition=False, only_public=False, sharing_key=None):
        """
        If ids_only = True, then returns list of Entity IDs. Else returns list of Entities (with properties) as dictionary. entity_id, entity_definition and dataproperty can be single value or list of values.
        If limit = 1, then returns Entity (not list).
        If full_definition = True ,then returns also empty properties.

        """
        ids = self.__get_id_list(entity_id=entity_id, search=search, entity_definition_keyname=entity_definition_keyname, limit=limit, only_public=only_public, sharing_key=sharing_key)
        if ids_only == True:
            return ids

        entities = self.__get_properties(entity_id=ids, entity_definition_keyname=entity_definition_keyname, dataproperty=dataproperty, full_definition=full_definition, only_public=only_public, sharing_key=sharing_key)
        if not entities and full_definition == False and entity_definition_keyname == None:
            return

        if limit == 1 and len(entities) > 0:
            return entities[0]

        return entities
dataset/ETHPy150Open argoroots/Entu/app/main/db.py/Entity.get_entities/original