Android Open Source - rcdroid Packet






From Project

Back to project page rcdroid.

License

The source code is released under:

Copyright (c) 2013, Jamie Furness (jamie@jamierf.co.uk) All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following...

If you think the Android project rcdroid listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.jamierf.rcdroid.http;
/*from  ww w.j a  v a2s.  co  m*/
import com.google.common.base.Objects;
import com.google.common.base.Optional;
import org.codehaus.jackson.annotate.JsonCreator;
import org.codehaus.jackson.annotate.JsonProperty;

import java.util.Map;

public class Packet {

    public static enum Type {
        LOCATION_UPDATED, ACCELERATION_UPDATED, ROTATION_UPDATED, BATTERY_UPDATED, // sensors
        SET_SPEED, SET_ROTATION, // servo control
        PLAY_ALARM; // other control
    }

    @JsonProperty
    private final Type type;

    @JsonProperty
    private final Map<String, Object> data;

    @JsonProperty
    private final long timestamp;

    @JsonCreator
    public Packet(@JsonProperty("type") Type type, @JsonProperty("data") Map<String, Object> data, @JsonProperty("timestamp") long timestamp) {
        this.type = type;
        this.data = data;
        this.timestamp = timestamp;
    }

    public Type getType() {
        return type;
    }

    public <T> Optional<T> get(String key) {
        return Optional.fromNullable((T) data.get(key));
    }

    public long getTimestamp() {
        return timestamp;
    }

    @Override
    public String toString() {
        return Objects.toStringHelper(this)
                .add("type", type)
                .add("data", data)
                .add("timestamp", timestamp)
                .toString();
    }
}




Java Source Code List

com.jamierf.rcdroid.CarActivity.java
com.jamierf.rcdroid.CarService.java
com.jamierf.rcdroid.config.CarConfig.java
com.jamierf.rcdroid.config.ServoConfig.java
com.jamierf.rcdroid.config.WebUIConfig.java
com.jamierf.rcdroid.http.Packet.java
com.jamierf.rcdroid.http.WebController.java
com.jamierf.rcdroid.http.handler.AssetResourceHandler.java
com.jamierf.rcdroid.http.handler.ControlProtocolHandler.java
com.jamierf.rcdroid.http.handler.JsonPOJOHandler.java
com.jamierf.rcdroid.http.listener.ClientListener.java
com.jamierf.rcdroid.http.listener.PacketListener.java
com.jamierf.rcdroid.input.SensorController.java
com.jamierf.rcdroid.input.api.BatteryStatus.java
com.jamierf.rcdroid.input.api.Coordinate.java
com.jamierf.rcdroid.input.sensor.AbstractSensor.java
com.jamierf.rcdroid.input.sensor.AccelerationSensor.java
com.jamierf.rcdroid.input.sensor.BatterySensor.java
com.jamierf.rcdroid.input.sensor.LocationSensor.java
com.jamierf.rcdroid.input.sensor.RotationSensor.java
com.jamierf.rcdroid.input.sensor.listener.SensorListener.java
com.jamierf.rcdroid.logic.CarEngine.java
com.jamierf.rcdroid.logic.packets.AbstractServoHandler.java
com.jamierf.rcdroid.logic.packets.PlayAlarmRequestHandler.java
com.jamierf.rcdroid.logic.packets.SetRotationRequestHandler.java
com.jamierf.rcdroid.logic.packets.SetSpeedRequestHandler.java
com.jamierf.rcdroid.logic.sensors.AccelerationSensorHandler.java
com.jamierf.rcdroid.logic.sensors.BatterySensorHandler.java
com.jamierf.rcdroid.logic.sensors.LocationSensorHandler.java
com.jamierf.rcdroid.logic.sensors.RotationSensorHandler.java