/* * Copyright (C) 2010-2012 Stichting Akvo (Akvo Foundation) * * This file is part of Akvo FLOW. * * Akvo FLOW is free software: you can redistribute it and modify it under the terms of * the GNU Affero General Public License (AGPL) as published by the Free Software Foundation, * either version 3 of the License or any later version. * * Akvo FLOW is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU Affero General Public License included below for more details. * * The full license text can also be seen at <http://www.gnu.org/licenses/agpl.html>. */ package org.waterforpeople.mapping.app.gwt.client.device; import java.util.Date; import com.gallatinsystems.device.domain.Device; import com.gallatinsystems.framework.gwt.dto.client.BaseDto; public class DeviceDto extends BaseDto { private static final long serialVersionUID = 3197857074399585732L; private String phoneNumber; private String esn; private Double lastKnownLat; private Double lastKnownLon; private Double lastKnownAccuracy; private Date lastPositionDate; private String gallatinSoftwareManifest; private String deviceGroup; private String deviceGroupName; private String deviceIdentifier; private Device device; public DeviceDto() { } public DeviceDto(Device device) { this.device = device; } public String getGallatinSoftwareManifest() { if (this.device != null) { return device.getGallatinSoftwareManifest(); } return gallatinSoftwareManifest; } public void setGallatinSoftwareManifest(String gallatinSoftwareManifest) { this.gallatinSoftwareManifest = gallatinSoftwareManifest; } public String getDeviceIdentifier() { if (this.device != null) { return device.getDeviceIdentifier(); } return deviceIdentifier; } public void setDeviceIdentifier(String deviceIdentifier) { this.deviceIdentifier = deviceIdentifier; } public String getDeviceGroup() { if (this.device != null) { return device.getDeviceGroup(); } return deviceGroup; } public void setDeviceGroup(String deviceGroup) { this.deviceGroup = deviceGroup; } public Double getLastKnownLat() { if (this.device != null) { return device.getLastKnownLat(); } return lastKnownLat; } public void setLastKnownLat(Double lastKnownLat) { this.lastKnownLat = lastKnownLat; } public Double getLastKnownLon() { if (this.device != null) { return device.getLastKnownLon(); } return lastKnownLon; } public void setLastKnownLon(Double lastKnownLon) { this.lastKnownLon = lastKnownLon; } public Double getLastKnownAccuracy() { if (this.device != null) { return device.getLastKnownAccuracy(); } return lastKnownAccuracy; } public void setLastKnownAccuracy(Double lastKnownAccuracy) { this.lastKnownAccuracy = lastKnownAccuracy; } public Date getLastPositionDate() { if (this.device != null) { return device.getLastLocationBeaconTime(); } return lastPositionDate; } public void setLastPositionDate(Date lastPositionDate) { this.lastPositionDate = lastPositionDate; } public String getEsn() { if (this.device != null) { return device.getEsn(); } return esn; } public void setEsn(String esn) { this.esn = esn; } public String getPhoneNumber() { if (this.device != null) { return device.getPhoneNumber(); } return phoneNumber; } public void setPhoneNumber(String phoneNumber) { this.phoneNumber = phoneNumber; } public void setDeviceGroupName(String deviceGroupName) { this.deviceGroupName = deviceGroupName; } public String getDeviceGroupName() { return deviceGroupName; } @Override public Long getKeyId() { if (this.device != null) { return device.getKey().getId(); } return super.getKeyId(); } }