def _create_random_entity_class(self, pk=None, rk=None): ''' Creates a class-based entity with fixed values, using all of the supported data types. ''' partition = pk if pk is not None else self.get_resource_name('pk') row = rk if rk is not None else self.get_resource_name('rk') entity = Entity() entity.PartitionKey = partition entity.RowKey = row entity.age = 39 entity.sex = 'male' entity.name = 'John Doe' entity.married = True entity.deceased = False entity.optional = None entity.evenratio = 3.0 entity.ratio = 3.1 entity.large = 933311100 entity.Birthday = datetime(1973, 10, 4) entity.birthday = datetime(1970, 10, 4) entity.binary = EntityProperty(EdmType.BINARY, b'binary') entity.other = EntityProperty(EdmType.INT32, 20) entity.clsid = EntityProperty( EdmType.GUID, 'c9da6455-213d-42c9-9a79-3e9149a57833') return entity
def create_entity(station: WeatherStationTuple) -> dict: """ Conversion from input data to desired properties and types """ entity = Entity() entity.provider = 'bom' entity.country = 'Australia' entity.country_code = 'AU' entity.state = station.state entity.site = station.site entity.name = station.name entity.start_year = station.start_year entity.end_year = station.end_year location = { 'type': "point", 'coordinates': [float(station.longitude), float(station.latitude)] } entity.location = json.dumps(location) entity.PartitionKey = f"{entity.country_code}.{entity.state}" entity.RowKey = entity.site return entity