Beispiel #1
0
def KegTapToProto(tap, full=False):
    ret = models_pb2.KegTap()
    ret.id = tap.id
    ret.name = tap.name
    ret.sort_order = tap.sort_order
    meter = tap.current_meter()

    if meter:
        ret.meter_name = meter.meter_name()
        ret.ml_per_tick = old_div(1, meter.ticks_per_ml)
        ret.meter.MergeFrom(ToProto(meter))
    else:
        # TODO(mikey): Remove compatibility.
        ret.meter_name = "unknown.%s" % tap.id
        ret.ml_per_tick = 0

    toggle = tap.current_toggle()
    if toggle:
        ret.relay_name = toggle.toggle_name()
        ret.toggle.MergeFrom(ToProto(toggle))
    else:
        ret.relay_name = ""

    if tap.current_keg:
        ret.current_keg_id = tap.current_keg_id
        if full:
            ret.current_keg.MergeFrom(ToProto(tap.current_keg, full=True))

    if tap.temperature_sensor:
        ret.thermo_sensor.MergeFrom(ToProto(tap.temperature_sensor))
        ret.thermo_sensor_id = tap.temperature_sensor_id
        log = tap.temperature_sensor.LastLog()
        if log:
            ret.last_temperature.MergeFrom(ToProto(log))
    return ret
Beispiel #2
0
def KegTapToProto(tap, full=False):
    ret = models_pb2.KegTap()
    ret.id = tap.seqn
    ret.name = tap.name
    ret.meter_name = tap.meter_name
    ret.relay_name = tap.relay_name or ''
    ret.ml_per_tick = tap.ml_per_tick
    if tap.description is not None:
        ret.description = tap.description
    if tap.current_keg:
        ret.current_keg_id = tap.current_keg.seqn
        if full:
            ret.current_keg.MergeFrom(ToProto(tap.current_keg, full=True))

    if tap.temperature_sensor:
        ret.thermo_sensor_id = tap.temperature_sensor.seqn
        log = tap.temperature_sensor.LastLog()
        if log:
            ret.last_temperature.MergeFrom(ToProto(log))
    return ret
Beispiel #3
0
def KegTapToProto(tap, full=False):
    ret = models_pb2.KegTap()
    ret.id = tap.id
    ret.name = tap.name
    meter = tap.current_meter()

    if meter:
        ret.meter_name = meter.meter_name()
        ret.ml_per_tick = 1 / meter.ticks_per_ml
        ret.meter.MergeFrom(ToProto(meter))
    else:
        # TODO(mikey): Remove compatibility.
        ret.meter_name = 'unknown.%s' % tap.id
        ret.ml_per_tick = 0

    toggle = tap.current_toggle()
    if toggle:
        ret.relay_name = toggle.toggle_name()
        ret.toggle.MergeFrom(ToProto(toggle))
    else:
        ret.relay_name = ''

    if tap.description is not None:
        ret.description = tap.description
    if tap.current_keg:
        ret.current_keg_id = tap.current_keg_id
        if full:
            ret.current_keg.MergeFrom(ToProto(tap.current_keg, full=True))

    if tap.temperature_sensor:
        ret.thermo_sensor.MergeFrom(ToProto(tap.temperature_sensor))
        ret.thermo_sensor_id = tap.temperature_sensor_id
        log = tap.temperature_sensor.LastLog()
        if log:
            ret.last_temperature.MergeFrom(ToProto(log))
    return ret