kopia lustrzana https://github.com/sh123/codec2_talkie
Store position into the db
rodzic
ddd0dfb424
commit
beb12d7b1f
|
@ -30,6 +30,7 @@ import com.radio.codec2talkie.protocol.position.Position;
|
|||
import com.radio.codec2talkie.settings.PreferenceKeys;
|
||||
import com.radio.codec2talkie.storage.message.MessageItem;
|
||||
import com.radio.codec2talkie.storage.message.MessageItemRepository;
|
||||
import com.radio.codec2talkie.storage.position.PositionItemRepository;
|
||||
import com.radio.codec2talkie.tools.AudioTools;
|
||||
import com.radio.codec2talkie.transport.Transport;
|
||||
import com.radio.codec2talkie.transport.TransportFactory;
|
||||
|
@ -71,6 +72,7 @@ public class AppWorker extends Thread {
|
|||
// storage integration
|
||||
private final LogItemRepository _logItemRepository;
|
||||
private final MessageItemRepository _messageItemRepository;
|
||||
private final PositionItemRepository _positionItemRepository;
|
||||
|
||||
private final Context _context;
|
||||
private final SharedPreferences _sharedPreferences;
|
||||
|
@ -93,6 +95,7 @@ public class AppWorker extends Thread {
|
|||
|
||||
_logItemRepository = new LogItemRepository((Application)context);
|
||||
_messageItemRepository = new MessageItemRepository((Application)context);
|
||||
_positionItemRepository = new PositionItemRepository((Application)context);
|
||||
|
||||
constructSystemAudioDevices();
|
||||
}
|
||||
|
@ -235,7 +238,7 @@ public class AppWorker extends Thread {
|
|||
position.maidenHead, position.latitude, position.longitude,
|
||||
position.bearingDegrees, position.speedMetersPerSecond, position.altitudeMeters,
|
||||
position.symbolCode, position.status, position.comment));
|
||||
// TODO, store to database
|
||||
_positionItemRepository.insertPositionItem(position.toPositionItem(false));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -256,16 +259,7 @@ public class AppWorker extends Thread {
|
|||
String note = (textMessage.src == null ? "UNK" : textMessage.src) + "→" +
|
||||
(textMessage.dst == null ? "UNK" : textMessage.dst);
|
||||
sendStatusUpdate(AppMessage.EV_TEXT_MESSAGE_RECEIVED, note + ": " + textMessage.text);
|
||||
|
||||
MessageItem messageItem = new MessageItem();
|
||||
messageItem.setTimestampEpoch(System.currentTimeMillis());
|
||||
messageItem.setNeedsAck(false); // TODO
|
||||
messageItem.setIsTransmit(false);
|
||||
messageItem.setSrcCallsign(textMessage.src);
|
||||
messageItem.setDstCallsign(textMessage.dst);
|
||||
messageItem.setMessage(textMessage.text);
|
||||
|
||||
_messageItemRepository.insertMessageItem(messageItem);
|
||||
_messageItemRepository.insertMessageItem(textMessage.toMessageItem(false));
|
||||
Log.i(TAG, "message received: " + textMessage.text);
|
||||
}
|
||||
|
||||
|
@ -303,16 +297,7 @@ public class AppWorker extends Thread {
|
|||
String note = (textMessage.src == null ? "UNK" : textMessage.src) + "→" +
|
||||
(textMessage.dst == null ? "UNK" : textMessage.dst);
|
||||
sendStatusUpdate(AppMessage.EV_TEXT_MESSAGE_TRANSMITTED, note);
|
||||
|
||||
MessageItem messageItem = new MessageItem();
|
||||
messageItem.setTimestampEpoch(System.currentTimeMillis());
|
||||
messageItem.setNeedsAck(false); // TODO
|
||||
messageItem.setIsTransmit(true);
|
||||
messageItem.setSrcCallsign(textMessage.src);
|
||||
messageItem.setDstCallsign(textMessage.dst);
|
||||
messageItem.setMessage(textMessage.text);
|
||||
|
||||
_messageItemRepository.insertMessageItem(messageItem);
|
||||
_messageItemRepository.insertMessageItem(textMessage.toMessageItem(true));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,7 +1,20 @@
|
|||
package com.radio.codec2talkie.protocol.message;
|
||||
|
||||
import com.radio.codec2talkie.storage.message.MessageItem;
|
||||
|
||||
public class TextMessage {
|
||||
public String src;
|
||||
public String dst;
|
||||
public String text;
|
||||
|
||||
public MessageItem toMessageItem(boolean isTransmit) {
|
||||
MessageItem messageItem = new MessageItem();
|
||||
messageItem.setTimestampEpoch(System.currentTimeMillis());
|
||||
messageItem.setNeedsAck(false); // TODO
|
||||
messageItem.setIsTransmit(isTransmit);
|
||||
messageItem.setSrcCallsign(this.src);
|
||||
messageItem.setDstCallsign(this.dst);
|
||||
messageItem.setMessage(this.text);
|
||||
return messageItem;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.radio.codec2talkie.protocol.position;
|
|||
|
||||
import android.location.Location;
|
||||
|
||||
import com.radio.codec2talkie.storage.position.PositionItem;
|
||||
import com.radio.codec2talkie.tools.UnitTools;
|
||||
|
||||
public class Position {
|
||||
|
@ -58,4 +59,23 @@ public class Position {
|
|||
|
||||
return Math.sqrt(distance);
|
||||
}
|
||||
|
||||
public PositionItem toPositionItem(boolean isTransmit) {
|
||||
PositionItem positionItem = new PositionItem();
|
||||
positionItem.setTimestampEpoch(System.currentTimeMillis());
|
||||
positionItem.setIsTransmit(isTransmit);
|
||||
positionItem.setSrcCallsign(srcCallsign);
|
||||
positionItem.setDstCallsign(dstCallsign);
|
||||
positionItem.setLatitude(latitude);
|
||||
positionItem.setLongitude(longitude);
|
||||
positionItem.setMaidenHead(maidenHead);
|
||||
positionItem.setAltitudeMeters(altitudeMeters);
|
||||
positionItem.setBearingDegrees(bearingDegrees);
|
||||
positionItem.setSpeedMetersPerSecond(speedMetersPerSecond);
|
||||
positionItem.setStatus(status);
|
||||
positionItem.setComment(comment);
|
||||
positionItem.setSymbolCode(symbolCode);
|
||||
positionItem.setPrivacyLevel(privacyLevel);
|
||||
return positionItem;
|
||||
}
|
||||
}
|
||||
|
|
Ładowanie…
Reference in New Issue