diff --git a/distribution/pom.xml b/distribution/pom.xml
index 2e939a867c2..5dffed81247 100644
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -3,7 +3,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
distribution
diff --git a/examples/cascading/pom.xml b/examples/cascading/pom.xml
index 6086a4f1188..248ce5deaa6 100644
--- a/examples/cascading/pom.xml
+++ b/examples/cascading/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
cascading
diff --git a/examples/ccsds-frames/pom.xml b/examples/ccsds-frames/pom.xml
index 64907d8a72a..081c45028ee 100644
--- a/examples/ccsds-frames/pom.xml
+++ b/examples/ccsds-frames/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
ccsds-frames
diff --git a/examples/cfdp-udp/pom.xml b/examples/cfdp-udp/pom.xml
index 4011aeffb93..965be3b43f5 100644
--- a/examples/cfdp-udp/pom.xml
+++ b/examples/cfdp-udp/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
cfdp-udp
diff --git a/examples/cfdp/pom.xml b/examples/cfdp/pom.xml
index b0b59272efd..a77c649985e 100644
--- a/examples/cfdp/pom.xml
+++ b/examples/cfdp/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
cfdp
diff --git a/examples/perftest1/pom.xml b/examples/perftest1/pom.xml
index 5eb2f015add..b240d7c1744 100644
--- a/examples/perftest1/pom.xml
+++ b/examples/perftest1/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
perftest1
diff --git a/examples/perftest2/pom.xml b/examples/perftest2/pom.xml
index f19793890b3..be6cef6ec69 100644
--- a/examples/perftest2/pom.xml
+++ b/examples/perftest2/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
perftest2
diff --git a/examples/pom.xml b/examples/pom.xml
index b0daecbf660..d9daa7a433d 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -5,7 +5,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
org.yamcs.examples
diff --git a/examples/pus/pom.xml b/examples/pus/pom.xml
index 9ea0b823bc7..cc99c74efbc 100644
--- a/examples/pus/pom.xml
+++ b/examples/pus/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
pus
diff --git a/examples/replication1/pom.xml b/examples/replication1/pom.xml
index 29327258a92..c86d877cb27 100644
--- a/examples/replication1/pom.xml
+++ b/examples/replication1/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
replication1
diff --git a/examples/replication2/pom.xml b/examples/replication2/pom.xml
index 350f465cc6c..7064489d1d0 100644
--- a/examples/replication2/pom.xml
+++ b/examples/replication2/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
replication2
diff --git a/examples/replication3/pom.xml b/examples/replication3/pom.xml
index adf80e144b5..60d905671ea 100644
--- a/examples/replication3/pom.xml
+++ b/examples/replication3/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
replication3
diff --git a/examples/simulation/pom.xml b/examples/simulation/pom.xml
index 62dc07b2526..ed0f581e871 100644
--- a/examples/simulation/pom.xml
+++ b/examples/simulation/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
simulation
diff --git a/examples/snippets/pom.xml b/examples/snippets/pom.xml
index 24b8b3722f0..94ce8310e66 100644
--- a/examples/snippets/pom.xml
+++ b/examples/snippets/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
snippets
diff --git a/examples/templates/pom.xml b/examples/templates/pom.xml
index c8c14f3e8c9..6324320c573 100644
--- a/examples/templates/pom.xml
+++ b/examples/templates/pom.xml
@@ -5,7 +5,7 @@
org.yamcs.examples
examples
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
templates
diff --git a/packet-viewer/pom.xml b/packet-viewer/pom.xml
index 4500f52feef..3e304d5f01e 100644
--- a/packet-viewer/pom.xml
+++ b/packet-viewer/pom.xml
@@ -3,7 +3,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
packet-viewer
diff --git a/pom.xml b/pom.xml
index 94fee4acb08..f61b0078a26 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
4.0.0
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
pom
diff --git a/simulator/pom.xml b/simulator/pom.xml
index d00f13b2141..14df0ed14ed 100644
--- a/simulator/pom.xml
+++ b/simulator/pom.xml
@@ -5,7 +5,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
simulator
diff --git a/tests/pom.xml b/tests/pom.xml
index 7adc887ebf7..1806c6f56bf 100644
--- a/tests/pom.xml
+++ b/tests/pom.xml
@@ -6,7 +6,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
tests
diff --git a/yamcs-api/pom.xml b/yamcs-api/pom.xml
index c8fd0721ab6..b9273715a78 100644
--- a/yamcs-api/pom.xml
+++ b/yamcs-api/pom.xml
@@ -4,7 +4,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
yamcs-api
diff --git a/yamcs-client/pom.xml b/yamcs-client/pom.xml
index 016d580f25e..2ca36f5e3db 100644
--- a/yamcs-client/pom.xml
+++ b/yamcs-client/pom.xml
@@ -3,7 +3,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
yamcs-client
diff --git a/yamcs-core/pom.xml b/yamcs-core/pom.xml
index d373ed4ea6e..62b9566fec3 100644
--- a/yamcs-core/pom.xml
+++ b/yamcs-core/pom.xml
@@ -3,7 +3,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
yamcs-core
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/ccsds/VcTmPacketHandler.java b/yamcs-core/src/main/java/org/yamcs/tctm/ccsds/VcTmPacketHandler.java
index 9981ec3539a..66040eed56f 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/ccsds/VcTmPacketHandler.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/ccsds/VcTmPacketHandler.java
@@ -85,7 +85,7 @@ public class VcTmPacketHandler implements TmPacketDataLink, VcDownlinkHandler, S
private Parameter spDataInCount, spDataInRate, vcDelta;
// List of published vcDelta's
- private ArrayList vcDeltas = new ArrayList<>();
+ private ArrayList vcDeltas = new ArrayList<>(1);
public VcTmPacketHandler(String yamcsInstance, String name, VcDownlinkManagedParameters vmp) {
@@ -120,7 +120,7 @@ public VcTmPacketHandler(String yamcsInstance, String name, VcDownlinkManagedPar
}
}
- public synchronized void publishVcDelta(long prevCount, long currentCount, int vcDifference) throws InterruptedException {
+ public void publishVcDelta(long prevCount, long currentCount, int vcDifference) {
long time = timeService.getMissionTime();
AggregateValue v = new AggregateValue(vcDeltaType.getMemberNames());
@@ -133,10 +133,6 @@ public synchronized void publishVcDelta(long prevCount, long currentCount, int v
pv.setAcquisitionStatus(AcquisitionStatus.ACQUIRED);
pv.setEngValue(v);
- while (Thread.holdsLock(vcDeltas)) {
- wait();
- }
-
vcDeltas.add(pv);
}
@@ -152,12 +148,20 @@ public void handle(DownlinkTransferFrame frame) {
lastFrameSeq = frame.getVcFrameSeq();
// Publish the vcDelta
- try {
- if (frameLoss != 0)
+ synchronized (vcDeltas) {
+ if (frameLoss != 0) {
+ while (vcDeltas.size() == 1) {
+ // Wait till consumed
+ try {
+ vcDeltas.wait();
+ } catch (InterruptedException e) {
+ Thread.currentThread().interrupt();
+ log.error("Interrupted while waiting for vcDeltas to be consumed", e);
+ }
+ }
+ // Produce the vcDelta
publishVcDelta(prevFrameSeq, lastFrameSeq, frameLoss);
-
- } catch (InterruptedException e) {
- Thread.currentThread().interrupt();
+ }
}
if (frame.containsOnlyIdleData()) {
@@ -450,11 +454,9 @@ public void setupSystemParameters(SystemParametersService sysParamService) {
}
- public synchronized void consumeVcDelta(List list) throws InterruptedException {
+ public void consumeVcDelta(List list) {
list.addAll(vcDeltas);
vcDeltas.clear();
-
- notify();
}
@Override
@@ -463,13 +465,11 @@ public Collection getSystemParameters(long time) {
try {
collectSystemParameters(time, list);
synchronized (vcDeltas) {
- if (!vcDeltas.isEmpty())
+ if (!vcDeltas.isEmpty()) {
consumeVcDelta(list);
+ vcDeltas.notify();
+ }
}
-
- } catch (InterruptedException e) {
- Thread.currentThread().interrupt();
-
} catch (Exception e) {
log.error("Exception caught when collecting link system parameters", e);
}
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceTen.java b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceTen.java
index cdec39bc3a1..9194a3cac58 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceTen.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceTen.java
@@ -67,7 +67,7 @@ public SubServiceTen(String yamcsInstance, YConfiguration config) {
try {
for (Map.Entry folderN: folders.entrySet())
- timetagScheduleDetailReportBucket.putObject(yamcsInstance + "/timetagScheduleDetailReport/" + folderN.getValue() + "/", "application/octet-stream", new HashMap<>(), new byte[0]);
+ timetagScheduleDetailReportBucket.putObject("timetagScheduleDetailReport/" + folderN.getValue() + "/", "application/octet-stream", new HashMap<>(), new byte[0]);
} catch (IOException e) {
log.error("Unable to create a directory `" + timetagScheduleDetailReportBucket.getName() + "/timetagScheduleDetailReport` for (Service - 11 | SubService - 10)", e);
@@ -100,7 +100,7 @@ public ArrayList generateTimetagScheduleDetailReport(long gentime, Map metadata;
if (foundObject == null) {
- filename = yamcsInstance + "/timetagScheduleDetailReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
+ filename = "timetagScheduleDetailReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(gentime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".csv";
@@ -239,7 +239,7 @@ public ArrayList process(TmPacket tmPacket) {
try {
foundObject = findObject(uniqueSignature);
if (foundObject == null) {
- String filename = yamcsInstance + "/timetagScheduleDetailReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
+ String filename = "timetagScheduleDetailReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(generationTime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".csv";
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceThirteen.java b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceThirteen.java
index e481f5f0629..fc823598b29 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceThirteen.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/eleven/SubServiceThirteen.java
@@ -66,7 +66,7 @@ public SubServiceThirteen(String yamcsInstance, YConfiguration config) {
try {
for (Map.Entry folderN: folders.entrySet())
- timetagScheduleSummaryReportBucket.putObject(yamcsInstance + "/timetagScheduleSummaryReport/" + folderN.getValue() + "/", "application/octet-stream", new HashMap<>(), new byte[0]);
+ timetagScheduleSummaryReportBucket.putObject("timetagScheduleSummaryReport/" + folderN.getValue() + "/", "application/octet-stream", new HashMap<>(), new byte[0]);
} catch (IOException e) {
log.error("Unable to create a directory `" + timetagScheduleSummaryReportBucket.getName() + "/timetagScheduleSummaryReport` for (Service - 11 | SubService - 13)", e);
@@ -99,7 +99,7 @@ public void generateTimetagScheduleSummaryReport(long gentime, Map metadata;
if (foundObject == null) {
- filename = yamcsInstance + "/timetagScheduleSummaryReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
+ filename = "timetagScheduleSummaryReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(gentime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".csv";
@@ -232,7 +232,7 @@ public ArrayList process(TmPacket tmPacket) {
ObjectProperties foundObject = findObject(uniqueSignature);
if (foundObject == null) {
- String filename = yamcsInstance + "/timetagScheduleSummaryReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
+ String filename = "timetagScheduleSummaryReport/" + folders.get(apid) + "/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(generationTime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".csv";
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceNineteen.java b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceNineteen.java
index 57955149423..ed3bf78097c 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceNineteen.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceNineteen.java
@@ -73,7 +73,7 @@ public SubServiceNineteen(String yamcsInstance, YConfiguration config) {
packetStoreStatusReportBucket = PusTmManager.reports;
try {
- packetStoreStatusReportBucket.putObject(yamcsInstance + "/packetStoreStatusReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
+ packetStoreStatusReportBucket.putObject("packetStoreStatusReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
} catch (IOException e) {
log.error("Unable to create a directory `" + packetStoreStatusReportBucket.getName() + "/packetStoreStatusReport` for (Service - 15 | SubService - 19)", e);
@@ -88,7 +88,7 @@ public PreparedCommand process(PreparedCommand telecommand) {
public void generatePacketStoredStatusReport(long generationTime, Map packetStoreReportMap) {
long missionTime = PusTmManager.timeService.getMissionTime();
- String filename = yamcsInstance + "/packetStoreStatusReport/" + LocalDateTime.ofInstant(
+ String filename = "packetStoreStatusReport/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(generationTime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".csv";
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceThirteen.java b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceThirteen.java
index b1971d26c75..0dedb008f63 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceThirteen.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/fifteen/SubServiceThirteen.java
@@ -64,7 +64,7 @@ public SubServiceThirteen(String yamcsInstance, YConfiguration config) {
try {
for (Map.Entry folder: packetStoreMap.entrySet())
- packetStoreSummaryReportBucket.putObject(yamcsInstance + "/packetStoreSummaryReport/" + folder.getValue() + "/", "application/octet-stream", new HashMap<>(), new byte[0]);
+ packetStoreSummaryReportBucket.putObject("packetStoreSummaryReport/" + folder.getValue() + "/", "application/octet-stream", new HashMap<>(), new byte[0]);
} catch (IOException e) {
log.error("Unable to create a directory `" + packetStoreSummaryReportBucket.getName() + "/packetStoreSummaryReport` for (Service - 15 | SubService - 13)", e);
@@ -88,7 +88,7 @@ public void generatePacketStoredSummaryReport(long generationTime, Map packetStoreReport: packetStoreReportMap.entrySet()) {
- String filename = yamcsInstance + "/packetStoreSummaryReport/" + packetStoreMap.get(packetStoreReport.getKey()) + "/" + LocalDateTime.ofInstant(
+ String filename = "packetStoreSummaryReport/" + packetStoreMap.get(packetStoreReport.getKey()) + "/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(generationTime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".csv";
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceNine.java b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceNine.java
index c14f9390489..e59c2936111 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceNine.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceNine.java
@@ -64,7 +64,7 @@ public SubServiceNine(String yamcsInstance, YConfiguration subServiceSixConfig)
physicalDeviceReportBucket = PusTmManager.reports;
try {
- physicalDeviceReportBucket.putObject(yamcsInstance + "/physicalDeviceReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
+ physicalDeviceReportBucket.putObject("physicalDeviceReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
} catch (IOException e) {
log.error("Unable to create a directory `" + physicalDeviceReportBucket.getName() + "/physicalDeviceReport` for (Service - 2 | SubService - 9)", e);
@@ -92,7 +92,7 @@ public ArrayList process(TmPacket tmPacket) {
long generationTime = ByteArrayUtils.decodeCustomInteger(pPkt.getGenerationTime(), 0, PusTmManager.absoluteTimeLength);
long missionTime = PusTmManager.timeService.getMissionTime();
- String filename = yamcsInstance + "/physicalDeviceReport/" + LocalDateTime.ofInstant(
+ String filename = "physicalDeviceReport/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(generationTime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".json";
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceSix.java b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceSix.java
index f72207a8f42..6a9b8ea8dd1 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceSix.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceSix.java
@@ -51,7 +51,7 @@ public SubServiceSix(String yamcsInstance, YConfiguration subServiceSixConfig) {
registerDumpBucket = PusTmManager.reports;
try {
- registerDumpBucket.putObject(yamcsInstance + "/deviceRegisterReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
+ registerDumpBucket.putObject("deviceRegisterReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
} catch (IOException e) {
log.error("Unable to create a directory `" + registerDumpBucket.getName() + "/registerDumpBucket` for (Service - 2 | SubService - 6)", e);
@@ -80,7 +80,7 @@ public ArrayList process(TmPacket tmPacket) {
long missionTime = PusTmManager.timeService.getMissionTime();
long generationTime = ByteArrayUtils.decodeCustomInteger(pPkt.getGenerationTime(), 0, PusTmManager.absoluteTimeLength);
- String filename = yamcsInstance + "/deviceRegisterReport/" + LocalDateTime.ofInstant(
+ String filename = "deviceRegisterReport/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(generationTime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".json";
diff --git a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceTwelve.java b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceTwelve.java
index 6c7d9cda4dc..5575c8a9e10 100644
--- a/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceTwelve.java
+++ b/yamcs-core/src/main/java/org/yamcs/tctm/pus/services/tm/two/SubServiceTwelve.java
@@ -64,7 +64,7 @@ public SubServiceTwelve(String yamcsInstance, YConfiguration subServiceSixConfig
logicalDeviceReportBucket = PusTmManager.reports;
try {
- logicalDeviceReportBucket.putObject(yamcsInstance + "/logicalDeviceReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
+ logicalDeviceReportBucket.putObject("logicalDeviceReport/", "application/octet-stream", new HashMap<>(), new byte[0]);
} catch (IOException e) {
log.error("Unable to create a directory `" + logicalDeviceReportBucket.getName() + "/logicalDeviceReport` for (Service - 2 | SubService - 12)", e);
@@ -92,7 +92,7 @@ public ArrayList process(TmPacket tmPacket) {
long generationTime = ByteArrayUtils.decodeCustomInteger(pPkt.getGenerationTime(), 0, PusTmManager.absoluteTimeLength);
long missionTime = PusTmManager.timeService.getMissionTime();
- String filename = yamcsInstance + "/logicalDeviceReport/" + LocalDateTime.ofInstant(
+ String filename = "logicalDeviceReport/" + LocalDateTime.ofInstant(
Instant.ofEpochSecond(generationTime),
ZoneId.of("GMT")
).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")) + ".json";
diff --git a/yamcs-core/src/main/java/org/yamcs/yarch/FileSystemBucketDatabase.java b/yamcs-core/src/main/java/org/yamcs/yarch/FileSystemBucketDatabase.java
index a45a507946e..2f6b3d3944e 100644
--- a/yamcs-core/src/main/java/org/yamcs/yarch/FileSystemBucketDatabase.java
+++ b/yamcs-core/src/main/java/org/yamcs/yarch/FileSystemBucketDatabase.java
@@ -62,13 +62,14 @@ public FileSystemBucket createBucket(String bucketName) throws IOException {
* the name of the bucket.
*
* @param location
- * the path to the bucket. This location should already exist.
+ * the path to the bucket. This location should already exist [Not anymore]
*/
public FileSystemBucket registerBucket(String bucketName, Path location) throws IOException {
if (!location.toFile().exists()) {
- throw new FileNotFoundException(
- "Directory '" + location + "'(" + location.toAbsolutePath() + ") not found");
- } else if (!location.toFile().isDirectory()) {
+ // Create the path
+ Files.createDirectories(location);
+
+ } if (!location.toFile().isDirectory()) {
throw new IOException("Not a directory '" + location + "'");
}
diff --git a/yamcs-tse/pom.xml b/yamcs-tse/pom.xml
index 287aac0e6ff..e8d7a7a687e 100644
--- a/yamcs-tse/pom.xml
+++ b/yamcs-tse/pom.xml
@@ -3,7 +3,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
yamcs-tse
diff --git a/yamcs-web/pom.xml b/yamcs-web/pom.xml
index c5303061db7..a3bc89da57c 100644
--- a/yamcs-web/pom.xml
+++ b/yamcs-web/pom.xml
@@ -3,7 +3,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
yamcs-web
diff --git a/yamcs-web/src/main/webapp/projects/webapp/src/app/admin/shared/admin-page/admin-page.component.css b/yamcs-web/src/main/webapp/projects/webapp/src/app/admin/shared/admin-page/admin-page.component.css
index 2b3b7c44515..385957bd841 100644
--- a/yamcs-web/src/main/webapp/projects/webapp/src/app/admin/shared/admin-page/admin-page.component.css
+++ b/yamcs-web/src/main/webapp/projects/webapp/src/app/admin/shared/admin-page/admin-page.component.css
@@ -36,6 +36,7 @@ mat-toolbar {
.navbar-logo {
text-align: center;
line-height: 0;
+ width: 98%;
}
.navbar-logo img {
diff --git a/yamcs-web/src/main/webapp/projects/webapp/src/app/file-transfer/transfer-file-dialog/transfer-file-dialog.component.ts b/yamcs-web/src/main/webapp/projects/webapp/src/app/file-transfer/transfer-file-dialog/transfer-file-dialog.component.ts
index 4d739ca97a1..b49b100d468 100644
--- a/yamcs-web/src/main/webapp/projects/webapp/src/app/file-transfer/transfer-file-dialog/transfer-file-dialog.component.ts
+++ b/yamcs-web/src/main/webapp/projects/webapp/src/app/file-transfer/transfer-file-dialog/transfer-file-dialog.component.ts
@@ -94,8 +94,6 @@ export class TransferFileDialogComponent implements OnDestroy {
// Filter out displays and stacks buckets
for (let i = 0; i < buckets.length; i++) {
- if (buckets[i].name == 'displays' || buckets[i].name == 'stacks')
- continue;
newBuckets.push(buckets[i]);
}
diff --git a/yamcs-web/src/main/webapp/projects/webapp/src/app/shared/instance-page/instance-page.component.css b/yamcs-web/src/main/webapp/projects/webapp/src/app/shared/instance-page/instance-page.component.css
index 4f1fa271336..d4cd5dde15c 100644
--- a/yamcs-web/src/main/webapp/projects/webapp/src/app/shared/instance-page/instance-page.component.css
+++ b/yamcs-web/src/main/webapp/projects/webapp/src/app/shared/instance-page/instance-page.component.css
@@ -71,6 +71,7 @@ mat-toolbar {
.navbar-logo {
text-align: center;
line-height: 0;
+ width: 98%;
}
.navbar-logo img {
diff --git a/yamcs-xtce/pom.xml b/yamcs-xtce/pom.xml
index 092b64f47bf..91d30820e57 100644
--- a/yamcs-xtce/pom.xml
+++ b/yamcs-xtce/pom.xml
@@ -5,7 +5,7 @@
org.yamcs
yamcs
- 5.10.9-Pixxel-6.4.1
+ 5.10.9-Pixxel-7.0.0
yamcs-xtce