master
sh123 2022-09-03 12:15:04 +03:00
rodzic a47801fae6
commit d463c2e767
4 zmienionych plików z 24 dodań i 5 usunięć

Wyświetl plik

@ -13,13 +13,15 @@ import com.radio.codec2talkie.storage.message.MessageItem;
import com.radio.codec2talkie.storage.message.MessageItemDao; import com.radio.codec2talkie.storage.message.MessageItemDao;
import com.radio.codec2talkie.storage.position.PositionItem; import com.radio.codec2talkie.storage.position.PositionItem;
import com.radio.codec2talkie.storage.position.PositionItemDao; import com.radio.codec2talkie.storage.position.PositionItemDao;
import com.radio.codec2talkie.storage.station.StationItem;
import com.radio.codec2talkie.storage.station.StationItemDao;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
@androidx.room.Database( @androidx.room.Database(
version = 6, version = 6,
entities = {LogItem.class, MessageItem.class, PositionItem.class}, entities = {LogItem.class, MessageItem.class, PositionItem.class, StationItem.class},
exportSchema = false exportSchema = false
) )
public abstract class AppDatabase extends RoomDatabase { public abstract class AppDatabase extends RoomDatabase {
@ -29,6 +31,7 @@ public abstract class AppDatabase extends RoomDatabase {
public abstract LogItemDao logItemDao(); public abstract LogItemDao logItemDao();
public abstract MessageItemDao messageItemDao(); public abstract MessageItemDao messageItemDao();
public abstract PositionItemDao positionItemDao(); public abstract PositionItemDao positionItemDao();
public abstract StationItemDao stationitemDao();
private static AppDatabase _db; private static AppDatabase _db;
private static ExecutorService _executor; private static ExecutorService _executor;

Wyświetl plik

@ -17,6 +17,7 @@ public interface LogItemDao {
void insertLogItem(LogItem logItem); void insertLogItem(LogItem logItem);
@Query("SELECT pos.timestampEpoch AS timestampEpoch, " + @Query("SELECT pos.timestampEpoch AS timestampEpoch, " +
"pos.id AS id, " +
"log.srcCallsign AS srcCallsign, " + "log.srcCallsign AS srcCallsign, " +
"log.logLine AS logLine," + "log.logLine AS logLine," +
"pos.dstCallsign AS dstCallsign, " + "pos.dstCallsign AS dstCallsign, " +
@ -38,6 +39,7 @@ public interface LogItemDao {
"GROUP BY log.srcCallsign " + "GROUP BY log.srcCallsign " +
"UNION " + "UNION " +
"SELECT pos.timestampEpoch AS timestampEpoch, " + "SELECT pos.timestampEpoch AS timestampEpoch, " +
"pos.id AS id, " +
"pos.srcCallsign AS srcCallsign, " + "pos.srcCallsign AS srcCallsign, " +
"log.logLine AS logLine," + "log.logLine AS logLine," +
"pos.dstCallsign AS dstCallsign, " + "pos.dstCallsign AS dstCallsign, " +
@ -61,6 +63,7 @@ public interface LogItemDao {
LiveData<List<StationItem>> getLastPositions(); LiveData<List<StationItem>> getLastPositions();
@Query("SELECT pos.timestampEpoch AS timestampEpoch, " + @Query("SELECT pos.timestampEpoch AS timestampEpoch, " +
"pos.id AS id, " +
"pos.srcCallsign AS srcCallsign, " + "pos.srcCallsign AS srcCallsign, " +
"pos.dstCallsign AS dstCallsign, " + "pos.dstCallsign AS dstCallsign, " +
"pos.latitude AS latitude, " + "pos.latitude AS latitude, " +

Wyświetl plik

@ -1,6 +1,13 @@
package com.radio.codec2talkie.storage.station; package com.radio.codec2talkie.storage.station;
import androidx.room.Entity;
import androidx.room.PrimaryKey;
@Entity
public class StationItem { public class StationItem {
@PrimaryKey(autoGenerate = true)
private long id;
private long timestampEpoch; private long timestampEpoch;
private String srcCallsign; private String srcCallsign;
public String dstCallsign; public String dstCallsign;
@ -18,6 +25,10 @@ public class StationItem {
public double rangeMiles; public double rangeMiles;
public int directivityDeg; public int directivityDeg;
public long getId() {
return id;
}
public long getTimestampEpoch() { return timestampEpoch; } public long getTimestampEpoch() { return timestampEpoch; }
public String getSrcCallsign() { return srcCallsign; } public String getSrcCallsign() { return srcCallsign; }
@ -50,6 +61,10 @@ public class StationItem {
public int getDirectivityDeg() { return directivityDeg; } public int getDirectivityDeg() { return directivityDeg; }
public void setId(long id) {
this.id = id;
}
public void setTimestampEpoch(long timestampEpoch) { this.timestampEpoch = timestampEpoch; } public void setTimestampEpoch(long timestampEpoch) { this.timestampEpoch = timestampEpoch; }
public void setSrcCallsign(String srcCallsign) { this.srcCallsign = srcCallsign; } public void setSrcCallsign(String srcCallsign) { this.srcCallsign = srcCallsign; }

Wyświetl plik

@ -5,14 +5,12 @@ import androidx.room.Insert;
import androidx.room.OnConflictStrategy; import androidx.room.OnConflictStrategy;
import androidx.room.Update; import androidx.room.Update;
import com.radio.codec2talkie.storage.position.PositionItem;
@Dao @Dao
public interface StationItemDao { public interface StationItemDao {
@Insert(onConflict = OnConflictStrategy.IGNORE) @Insert(onConflict = OnConflictStrategy.IGNORE)
void insertStation(StationItem logItem); void insertStation(StationItem stationItem);
@Update(onConflict = OnConflictStrategy.IGNORE) @Update(onConflict = OnConflictStrategy.IGNORE)
void updateStation(PositionItem logItem); void updateStation(StationItem stationItem);
} }