mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-09-15 10:18:45 +00:00
Merge remote-tracking branch 'github/bug6085' into main
This commit is contained in:
+18
@@ -2,8 +2,10 @@ package com.sap.sailing.domain.igtimiadapter.persistence;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.net.InetSocketAddress;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
@@ -60,11 +62,27 @@ public class IgtimiPersistenceTest {
|
||||
@Test
|
||||
public void testStoringAndLoadingSimpleDevice() {
|
||||
final Device device = Device.create(123, "DE-AC-AAHJ", "The tricky one");
|
||||
final String remoteAddress = new InetSocketAddress("127.0.0.1", 1234).toString();
|
||||
final TimePoint heartbeat = TimePoint.now();
|
||||
device.setLastHeartbeat(heartbeat, remoteAddress);
|
||||
mongoObjectFactory.storeDevice(device, clientSession);
|
||||
final Device loadedDevice = domainObjectFactory.getDevices(clientSession).iterator().next();
|
||||
assertEquals(device.getId(), loadedDevice.getId());
|
||||
assertEquals(device.getName(), loadedDevice.getName());
|
||||
assertEquals(device.getSerialNumber(), loadedDevice.getSerialNumber());
|
||||
assertEquals(new Util.Pair<>(heartbeat, remoteAddress), loadedDevice.getLastHeartbeat());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStoringAndLoadingSimpleDeviceWithEmptyHeartbeat() {
|
||||
final Device device = Device.create(123, "DE-AC-AAHJ", "The empty heartbeat");
|
||||
assertNull(device.getLastHeartbeat());
|
||||
mongoObjectFactory.storeDevice(device, clientSession);
|
||||
final Device loadedDevice = domainObjectFactory.getDevices(clientSession).iterator().next();
|
||||
assertEquals(device.getId(), loadedDevice.getId());
|
||||
assertEquals(device.getName(), loadedDevice.getName());
|
||||
assertEquals(device.getSerialNumber(), loadedDevice.getSerialNumber());
|
||||
assertNull(loadedDevice.getLastHeartbeat());
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
+7
-1
@@ -76,7 +76,13 @@ public class DomainObjectFactoryImpl implements DomainObjectFactory {
|
||||
final Number id = ((Number) ((Document) o).get(FieldNames.IGTIMI_DEVICES_ID.name()));
|
||||
final String serialNumber = (String) ((Document) o).get(FieldNames.IGTIMI_DEVICES_SERIAL_NUMBER.name());
|
||||
final String name = (String) ((Document) o).get(FieldNames.IGTIMI_DEVICES_NAME.name());
|
||||
result.add(Device.create(id.longValue(), serialNumber, name));
|
||||
final Device device = Device.create(id.longValue(), serialNumber, name);
|
||||
final Long lastHeartbeatMillis = ((Document) o).getLong(FieldNames.IGTIMI_DEVICES_LAST_HEARTBEAT_MILLIS.name());
|
||||
if (lastHeartbeatMillis != null) {
|
||||
final String remoteAddress = ((Document) o).getString(FieldNames.IGTIMI_DEVICES_REMOTE_ADDRESS.name());
|
||||
device.setLastHeartbeat(lastHeartbeatMillis == null ? null : TimePoint.of(lastHeartbeatMillis), remoteAddress);
|
||||
}
|
||||
result.add(device);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
package com.sap.sailing.domain.igtimiadapter.persistence.impl;
|
||||
|
||||
public enum FieldNames {
|
||||
IGTIMI_DEVICES_ID, IGTIMI_DEVICES_SERIAL_NUMBER, IGTIMI_DEVICES_NAME,
|
||||
IGTIMI_DEVICES_ID, IGTIMI_DEVICES_SERIAL_NUMBER, IGTIMI_DEVICES_NAME, IGTIMI_DEVICES_LAST_HEARTBEAT_MILLIS, IGTIMI_DEVICES_REMOTE_ADDRESS,
|
||||
IGTIMI_DATA_ACCESS_WINDOWS_ID, IGTIMI_DATA_ACCESS_WINDOWS_START_TIME_MILLIS, IGTIMI_DATA_ACCESS_WINDOWS_END_TIME_MILLIS, IGTIMI_DATA_ACCESS_WINDOWS_DEVICE_SERIAL_NUMBER,
|
||||
IGTIMI_MESSAGES_TIMESTAMP, IGTIMI_MESSAGES_DEVICE_SERIAL_NUMBER, IGTIMI_MESSAGES_PROTOBUF_MESSAGE;
|
||||
}
|
||||
|
||||
+2
@@ -64,6 +64,8 @@ public class MongoObjectFactoryImpl implements MongoObjectFactory {
|
||||
update.put(FieldNames.IGTIMI_DEVICES_ID.name(), device.getId());
|
||||
update.put(FieldNames.IGTIMI_DEVICES_NAME.name(), device.getName());
|
||||
update.put(FieldNames.IGTIMI_DEVICES_SERIAL_NUMBER.name(), device.getSerialNumber());
|
||||
update.put(FieldNames.IGTIMI_DEVICES_LAST_HEARTBEAT_MILLIS.name(), device.getLastHeartbeat() == null ? null : device.getLastHeartbeat().getA() == null ? null : device.getLastHeartbeat().getA().asMillis());
|
||||
update.put(FieldNames.IGTIMI_DEVICES_REMOTE_ADDRESS.name(), device.getLastHeartbeat() == null ? null : device.getLastHeartbeat().getB());
|
||||
final MongoCollection<Document> deviceCollection = db.getCollection(CollectionNames.IGTIMI_DEVICES.name()).withWriteConcern(WriteConcern.ACKNOWLEDGED);
|
||||
if (clientSessionOrNull == null) {
|
||||
deviceCollection.replaceOne(filter, update, new ReplaceOptions().upsert(true));
|
||||
|
||||
+2
-2
@@ -10,11 +10,12 @@ import com.sap.sailing.domain.igtimiadapter.server.riot.RiotStandardCommand;
|
||||
import com.sap.sse.common.TimePoint;
|
||||
|
||||
public interface ReplicableRiotServer extends RiotServer {
|
||||
|
||||
Void internalRemoveDevice(long deviceId);
|
||||
|
||||
Void internalUpdateDeviceName(long deviceId, String name);
|
||||
|
||||
Void internalUpdateDeviceLastHeartbeat(long deviceId, TimePoint timePointOfLastHeartbeat, String remoteAddress);
|
||||
|
||||
DataAccessWindow internalCreateDataAccessWindow(String deviceSerialNumber, TimePoint startTime, TimePoint endTime);
|
||||
|
||||
Void internalRemoveDataAccessWindow(long dawId);
|
||||
@@ -24,5 +25,4 @@ public interface ReplicableRiotServer extends RiotServer {
|
||||
Device internalCreateDevice(String deviceSerialNumber);
|
||||
|
||||
boolean internalSendStandardCommand(String deviceSerialNumber, RiotStandardCommand command) throws IOException;
|
||||
|
||||
}
|
||||
|
||||
+2
@@ -105,6 +105,8 @@ public interface RiotServer extends Replicable<ReplicableRiotServer, RiotReplica
|
||||
|
||||
void updateDeviceName(long deviceId, String name);
|
||||
|
||||
void updateDeviceLastHeartbeat(long deviceId, TimePoint timePointOfLastHeartbeat, String remoteAddress);
|
||||
|
||||
Iterable<DataAccessWindow> getDataAccessWindows();
|
||||
|
||||
DataAccessWindow getDataAccessWindowById(long id);
|
||||
|
||||
+29
-5
@@ -27,6 +27,7 @@ import com.igtimi.IgtimiStream.ChannelManagement;
|
||||
import com.igtimi.IgtimiStream.Msg;
|
||||
import com.igtimi.IgtimiStream.ServerDisconnecting;
|
||||
import com.sap.sailing.domain.igtimiadapter.ChannelManagementVisitor;
|
||||
import com.sap.sailing.domain.igtimiadapter.Device;
|
||||
import com.sap.sailing.domain.igtimiadapter.MsgVisitor;
|
||||
import com.sap.sailing.domain.igtimiadapter.server.riot.RiotConnection;
|
||||
import com.sap.sse.common.TimePoint;
|
||||
@@ -253,16 +254,13 @@ public class RiotConnectionImpl implements RiotConnection {
|
||||
MsgVisitor.accept(message, new MsgVisitor() {
|
||||
@Override
|
||||
public void handleDeviceManagement(DeviceManagement deviceManagement) {
|
||||
serialNumber = deviceManagement.getSerialNumber();
|
||||
updateSerialNumber(deviceManagement.getSerialNumber());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleData(Data data) {
|
||||
for (final DataMsg dataMsg : data.getDataList()) {
|
||||
final String messageSerialNumber = dataMsg.getSerialNumber();
|
||||
if (Util.hasLength(messageSerialNumber)) {
|
||||
serialNumber = dataMsg.getSerialNumber();
|
||||
}
|
||||
updateSerialNumber(dataMsg.getSerialNumber());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -288,6 +286,7 @@ public class RiotConnectionImpl implements RiotConnection {
|
||||
@Override
|
||||
public void handleHeartbeat(long heartbeat) {
|
||||
lastHeartbeatReceivedAt = TimePoint.now();
|
||||
updateDeviceHeartbeatIfSerialNumberKnown();
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -296,9 +295,34 @@ public class RiotConnectionImpl implements RiotConnection {
|
||||
public void handleAckResponse(AckResponse ackResponse) {
|
||||
logger.info("Received AckResponse from device "+getSerialNumber()+": "+ackResponse);
|
||||
}
|
||||
|
||||
private void updateSerialNumber(String serialNumber) {
|
||||
if (Util.hasLength(serialNumber)) {
|
||||
final boolean serialNumberWasUnknown = RiotConnectionImpl.this.serialNumber == null;
|
||||
RiotConnectionImpl.this.serialNumber = serialNumber;
|
||||
if (serialNumberWasUnknown && lastHeartbeatReceivedAt != null) {
|
||||
// we see the serial number for the first time although we already have received a heartbeat; update
|
||||
updateDeviceHeartbeatIfSerialNumberKnown();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
private void updateDeviceHeartbeatIfSerialNumberKnown() {
|
||||
if (serialNumber != null) {
|
||||
final Device device = riotServer.getDeviceBySerialNumber(serialNumber);
|
||||
if (device != null) {
|
||||
try {
|
||||
riotServer.updateDeviceLastHeartbeat(device.getId(), lastHeartbeatReceivedAt, getSocketChannel().getRemoteAddress().toString());
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void sendHeartbeat() {
|
||||
try {
|
||||
send(Msg.newBuilder().setChannelManagement(ChannelManagement.newBuilder().setHeartbeat(1)).build());
|
||||
|
||||
+15
@@ -402,6 +402,21 @@ public class RiotServerImpl extends AbstractReplicableWithObjectInputStream<Repl
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDeviceLastHeartbeat(long deviceId, TimePoint timePointOfLastHeartbeat, String remoteAddress) {
|
||||
apply(s->s.internalUpdateDeviceLastHeartbeat(deviceId, timePointOfLastHeartbeat, remoteAddress));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void internalUpdateDeviceLastHeartbeat(long deviceId, TimePoint timePointOfLastHeartbeat, String remoteAddress) {
|
||||
final Device existingDevice = devices.get(deviceId);
|
||||
if (existingDevice != null) {
|
||||
existingDevice.setLastHeartbeat(timePointOfLastHeartbeat, remoteAddress);
|
||||
mongoObjectFactory.storeDevice(existingDevice, /* clientSessionOrNull */ null);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Iterable<DataAccessWindow> getDataAccessWindows() {
|
||||
|
||||
+13
@@ -2,6 +2,8 @@ package com.sap.sailing.domain.igtimiadapter;
|
||||
|
||||
import com.sap.sailing.domain.igtimiadapter.impl.DeviceImpl;
|
||||
import com.sap.sse.common.Renamable;
|
||||
import com.sap.sse.common.TimePoint;
|
||||
import com.sap.sse.common.Util.Pair;
|
||||
import com.sap.sse.security.shared.WithQualifiedObjectIdentifier;
|
||||
|
||||
public interface Device extends HasId, WithQualifiedObjectIdentifier, Renamable {
|
||||
@@ -9,6 +11,17 @@ public interface Device extends HasId, WithQualifiedObjectIdentifier, Renamable
|
||||
* @return a string identifying the device, such as "AA-AA-AAAA"
|
||||
*/
|
||||
String getSerialNumber();
|
||||
|
||||
/**
|
||||
* Returns the time point and the remote address of the last heart beat received from this device,
|
||||
* or {@code null} if no heartbeat has been received from this device yet.
|
||||
*/
|
||||
Pair<TimePoint, String> getLastHeartbeat();
|
||||
|
||||
/**
|
||||
* @param remoteAddress the remote address from which the heart beat was received
|
||||
*/
|
||||
void setLastHeartbeat(TimePoint timePointOfLastHeartbeat, String remoteAddress);
|
||||
|
||||
static Device create(long id, String serialNumber, String name) {
|
||||
return new DeviceImpl(id, serialNumber, name);
|
||||
|
||||
+15
@@ -2,6 +2,8 @@ package com.sap.sailing.domain.igtimiadapter.impl;
|
||||
|
||||
import com.sap.sailing.domain.common.security.SecuredDomainType;
|
||||
import com.sap.sailing.domain.igtimiadapter.Device;
|
||||
import com.sap.sse.common.TimePoint;
|
||||
import com.sap.sse.common.Util.Pair;
|
||||
import com.sap.sse.security.shared.HasPermissions;
|
||||
import com.sap.sse.security.shared.QualifiedObjectIdentifier;
|
||||
import com.sap.sse.security.shared.TypeRelativeObjectIdentifier;
|
||||
@@ -10,6 +12,8 @@ public class DeviceImpl extends HasIdImpl implements Device {
|
||||
private static final long serialVersionUID = 7224992550721569935L;
|
||||
private final String serialNumber;
|
||||
private String name;
|
||||
private TimePoint lastHeartbeat;
|
||||
private String remoteAddress;
|
||||
|
||||
public DeviceImpl(long id, String serialNumber) {
|
||||
this(id, serialNumber, /* name */ null);
|
||||
@@ -36,6 +40,17 @@ public class DeviceImpl extends HasIdImpl implements Device {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Pair<TimePoint, String> getLastHeartbeat() {
|
||||
return lastHeartbeat == null ? null : new Pair<>(lastHeartbeat, remoteAddress);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLastHeartbeat(TimePoint timePointOfLastHeartbeat, String remoteAddress) {
|
||||
this.lastHeartbeat = timePointOfLastHeartbeat;
|
||||
this.remoteAddress = remoteAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public QualifiedObjectIdentifier getIdentifier() {
|
||||
return getPermissionType().getQualifiedObjectIdentifier(new TypeRelativeObjectIdentifier(getSerialNumber()));
|
||||
|
||||
+3
-3
@@ -313,9 +313,9 @@ public class IgtimiDevicesPanel extends FlowPanel implements FilterablePanelProv
|
||||
device -> device.getSerialNumber(), columnSortHandler);
|
||||
final TextColumn<IgtimiDeviceWithSecurityDTO> lastHeartBeatColumn = new AbstractSortableTextColumn<>(
|
||||
device -> device.getLastHeartBeat()==null?"":device.getLastHeartBeat().toString(), columnSortHandler,
|
||||
(a,b)->Util.compareToWithNull(a.getLastHeartBeat(), b.getLastHeartBeat(), /* null is less */ true));
|
||||
(a,b)->Util.compareToWithNull(a.getLastHeartBeat()==null?null:a.getLastHeartBeat().getA(), b.getLastHeartBeat()==null?null:b.getLastHeartBeat().getA(), /* null is less */ true));
|
||||
final TextColumn<IgtimiDeviceWithSecurityDTO> remoteAddressColumn = new AbstractSortableTextColumn<>(
|
||||
device -> device.getRemoteAddress(), columnSortHandler);
|
||||
device -> device.getLastHeartBeat() == null ? null : device.getLastHeartBeat().getB(), columnSortHandler);
|
||||
final SafeHtmlCell lastKnownPositionCell = new SafeHtmlCell();
|
||||
final Column<IgtimiDeviceWithSecurityDTO, SafeHtml> lastKnownPositionColumn = new Column<IgtimiDeviceWithSecurityDTO, SafeHtml>(lastKnownPositionCell) {
|
||||
@Override
|
||||
@@ -427,7 +427,7 @@ public class IgtimiDevicesPanel extends FlowPanel implements FilterablePanelProv
|
||||
final IgtimiDeviceWithSecurityDTO result = new IgtimiDeviceWithSecurityDTO(
|
||||
device.getId(), device.getSerialNumber(),
|
||||
nameField.getText(), device.getLastHeartBeat(),
|
||||
device.getRemoteAddress(), device.getLastKnownPosition(), device.getLastKnownBatteryPercent());
|
||||
device.getLastKnownPosition(), device.getLastKnownBatteryPercent());
|
||||
result.setAccessControlList(device.getAccessControlList());
|
||||
result.setOwnership(device.getOwnership());
|
||||
return result;
|
||||
|
||||
+6
-17
@@ -258,7 +258,6 @@ import com.sap.sailing.domain.igtimiadapter.IgtimiConnection;
|
||||
import com.sap.sailing.domain.igtimiadapter.IgtimiConnectionFactory;
|
||||
import com.sap.sailing.domain.igtimiadapter.datatypes.BatteryLevel;
|
||||
import com.sap.sailing.domain.igtimiadapter.datatypes.GpsLatLong;
|
||||
import com.sap.sailing.domain.igtimiadapter.server.riot.RiotConnection;
|
||||
import com.sap.sailing.domain.igtimiadapter.server.riot.RiotServer;
|
||||
import com.sap.sailing.domain.leaderboard.FlexibleLeaderboard;
|
||||
import com.sap.sailing.domain.leaderboard.Leaderboard;
|
||||
@@ -4251,29 +4250,18 @@ public class SailingServiceImpl extends ResultCachingProxiedRemoteServiceServlet
|
||||
@Override
|
||||
public ArrayList<IgtimiDeviceWithSecurityDTO> getAllIgtimiDevicesWithSecurity()
|
||||
throws IllegalStateException, ClientProtocolException, IOException, org.json.simple.parser.ParseException {
|
||||
final Map<String, TimePoint> lastHeartBeatsByDeviceSerialNumber = new HashMap<>();
|
||||
final Map<String, SocketAddress> remoteAddressByDeviceSerialNumber = new HashMap<>();
|
||||
final RiotServer riotServer = getRiotServer();
|
||||
for (final RiotConnection connection : riotServer.getLiveConnections()) {
|
||||
final String serialNumber = connection.getSerialNumber();
|
||||
if (serialNumber != null) {
|
||||
if (Util.compareToWithNull(connection.getLastHeartbeatReceivedAt(), lastHeartBeatsByDeviceSerialNumber.get(serialNumber), /* null is less */ true) > 0) {
|
||||
lastHeartBeatsByDeviceSerialNumber.put(serialNumber, connection.getLastHeartbeatReceivedAt());
|
||||
}
|
||||
remoteAddressByDeviceSerialNumber.put(serialNumber, connection.getSocketChannel().getRemoteAddress());
|
||||
}
|
||||
}
|
||||
final MultiTimeRange infiniteTimeRange = MultiTimeRange.of(TimeRange.create(null, null));
|
||||
return new ArrayList<>(Util.asList(getSecurityService().mapAndFilterByReadPermissionForCurrentUser(
|
||||
riotServer.getDevices(),
|
||||
device->{
|
||||
final SocketAddress remoteAddress = remoteAddressByDeviceSerialNumber.get(device.getSerialNumber());
|
||||
try {
|
||||
return toSecuredIgtimiDeviceDTO(
|
||||
device,
|
||||
lastHeartBeatsByDeviceSerialNumber.get(device.getSerialNumber()),
|
||||
remoteAddressByDeviceSerialNumber.get(device.getSerialNumber()),
|
||||
getPositionFromMessage(riotServer.getLastFix(device.getSerialNumber(), GpsLatLong.class,
|
||||
infiniteTimeRange)),
|
||||
remoteAddress == null ? null : remoteAddress.toString(),
|
||||
getPositionFromMessage(riotServer.getLastFix(device.getSerialNumber(), GpsLatLong.class, infiniteTimeRange)),
|
||||
getBatteryPercentFromMessage(riotServer.getLastFix(device.getSerialNumber(), BatteryLevel.class, infiniteTimeRange)));
|
||||
} catch (org.json.simple.parser.ParseException | IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
@@ -4297,12 +4285,13 @@ public class SailingServiceImpl extends ResultCachingProxiedRemoteServiceServlet
|
||||
}
|
||||
|
||||
private IgtimiDeviceWithSecurityDTO toSecuredIgtimiDeviceDTO(final Device igtimiDevice,
|
||||
final TimePoint lastHeartBeat, final SocketAddress remoteAddress, Position lastKnownPosition, double lastKnownBatteryPercent) {
|
||||
final String remoteAddress, Position lastKnownPosition, double lastKnownBatteryPercent) {
|
||||
final long id = igtimiDevice.getId();
|
||||
final String serialNumber = igtimiDevice.getSerialNumber();
|
||||
final String name = igtimiDevice.getName();
|
||||
final Pair<TimePoint, String> lastHeartBeat = igtimiDevice.getLastHeartbeat();
|
||||
final IgtimiDeviceWithSecurityDTO securedDevice = new IgtimiDeviceWithSecurityDTO(id, serialNumber, name,
|
||||
lastHeartBeat, remoteAddress == null ? null : remoteAddress.toString(), lastKnownPosition,
|
||||
lastHeartBeat, lastKnownPosition,
|
||||
lastKnownBatteryPercent);
|
||||
SecurityDTOUtil.addSecurityInformation(getSecurityService(), securedDevice);
|
||||
return securedDevice;
|
||||
|
||||
+5
-10
@@ -3,6 +3,7 @@ package com.sap.sailing.gwt.ui.shared;
|
||||
import com.sap.sailing.domain.common.Position;
|
||||
import com.sap.sailing.domain.common.security.SecuredDomainType;
|
||||
import com.sap.sse.common.TimePoint;
|
||||
import com.sap.sse.common.Util.Pair;
|
||||
import com.sap.sse.security.shared.HasPermissions;
|
||||
import com.sap.sse.security.shared.QualifiedObjectIdentifier;
|
||||
import com.sap.sse.security.shared.TypeRelativeObjectIdentifier;
|
||||
@@ -18,21 +19,19 @@ public class IgtimiDeviceWithSecurityDTO implements SecuredDTO {
|
||||
private long id;
|
||||
private String name;
|
||||
private String serialNumber;
|
||||
private TimePoint lastHeartBeat;
|
||||
private String remoteAddress;
|
||||
private Pair<TimePoint, String> lastHeartBeat;
|
||||
private Position lastKnownPosition;
|
||||
private double lastKnownBatteryPercent;
|
||||
|
||||
@Deprecated // GWT serialization only
|
||||
IgtimiDeviceWithSecurityDTO() {}
|
||||
|
||||
public IgtimiDeviceWithSecurityDTO(long id, String serialNumber, String name, TimePoint lastHeartBeat,
|
||||
String remoteAddress, Position lastKnownPosition, double lastKnownBatteryPercent) {
|
||||
public IgtimiDeviceWithSecurityDTO(long id, String serialNumber, String name, Pair<TimePoint, String> lastHeartBeat,
|
||||
Position lastKnownPosition, double lastKnownBatteryPercent) {
|
||||
this.id = id;
|
||||
this.serialNumber = serialNumber;
|
||||
this.name = name;
|
||||
this.lastHeartBeat = lastHeartBeat;
|
||||
this.remoteAddress = remoteAddress;
|
||||
this.lastKnownPosition = lastKnownPosition;
|
||||
this.lastKnownBatteryPercent = lastKnownBatteryPercent;
|
||||
}
|
||||
@@ -49,14 +48,10 @@ public class IgtimiDeviceWithSecurityDTO implements SecuredDTO {
|
||||
return serialNumber;
|
||||
}
|
||||
|
||||
public TimePoint getLastHeartBeat() {
|
||||
public Pair<TimePoint, String> getLastHeartBeat() {
|
||||
return lastHeartBeat;
|
||||
}
|
||||
|
||||
public String getRemoteAddress() {
|
||||
return remoteAddress;
|
||||
}
|
||||
|
||||
public Position getLastKnownPosition() {
|
||||
return lastKnownPosition;
|
||||
}
|
||||
|
||||
+325
-329
@@ -23,339 +23,335 @@
|
||||
<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -console -clean"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Djetty.port=8889 -Dreplication.exchangeName=sapsailinganalytics-replica -Declipse.ignoreApp=true -Dosgi.noShutdown=true -Dexpedition.udp.port=2011 -Xmx6000m -XX:+UseG1GC -Djetty.home=${project_loc:com.sap.sailing.server}/../target/configuration/jetty -Djava.util.logging.config.file=${project_loc:com.sap.sailing.server}/../target/configuration/logging_debug.properties -Dmongo.dbName=replica -Dreplicate.on.start=com.sap.sailing.server.impl.RacingEventServiceImpl,com.sap.sse.security.impl.SecurityServiceImpl,com.sap.sse.filestorage.impl.FileStorageManagementServiceImpl,com.sap.sse.mail.impl.MailServiceImpl,com.sap.sailing.polars.impl.PolarDataServiceImpl,com.sap.sailing.domain.racelogtracking.impl.fixtracker.RegattaLogFixTrackerRegattaListener,com.sap.sailing.windestimation.integration.WindEstimationFactoryServiceImpl,com.sap.sailing.shared.server.impl.SharedSailingDataImpl,com.sap.sse.landscape.aws.impl.AwsLandscapeStateImpl,com.sap.sailing.domain.igtimiadapter.server.riot.impl.RiotServerImpl -Dreplicate.master.queue.host=127.0.0.1 -Dreplicate.master.queue.port=5672 -Dreplicate.master.servlet.port=8888 -Dreplicate.master.servlet.host=127.0.0.1 -Dreplicate.master.exchange.name=sapsailinganalytics -Dreplicate.master.username=admin -Dreplicate.master.password=admin -DAnniversaryRaceDeterminator.enabled=true -Djava.naming.factory.url.pkgs=org.eclipse.jetty.jndi -Djava.naming.factory.initial=org.eclipse.jetty.jndi.InitialContextFactory -Dorg.eclipse.jetty.annotations.maxWait=120 -Dsubscriptions.disableMailVerificationRequirement=true -Dmanage2sail.accesstoken=${MANAGE2SAIL_ACCESS_TOKEN} -Dgoogle.maps.authenticationparams=${GOOGLE_MAPS_AUTHENTICATION_PARAMS}"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Djetty.port=8889 -Dreplication.exchangeName=sapsailinganalytics-replica -Declipse.ignoreApp=true -Dosgi.noShutdown=true -Dexpedition.udp.port=2011 -Xmx6000m -XX:+UseG1GC -Djetty.home=${project_loc:com.sap.sailing.server}/../target/configuration/jetty -Djava.util.logging.config.file=${project_loc:com.sap.sailing.server}/../target/configuration/logging_debug.properties -Dmongo.dbName=replica -Dreplicate.on.start=com.sap.sailing.server.impl.RacingEventServiceImpl,com.sap.sse.security.impl.SecurityServiceImpl,com.sap.sse.filestorage.impl.FileStorageManagementServiceImpl,com.sap.sse.mail.impl.MailServiceImpl,com.sap.sailing.polars.impl.PolarDataServiceImpl,com.sap.sailing.domain.racelogtracking.impl.fixtracker.RegattaLogFixTrackerRegattaListener,com.sap.sailing.windestimation.integration.WindEstimationFactoryServiceImpl,com.sap.sailing.shared.server.impl.SharedSailingDataImpl,com.sap.sse.landscape.aws.impl.AwsLandscapeStateImpl,com.sap.sailing.domain.igtimiadapter.server.riot.impl.RiotServerImpl -Dreplicate.master.queue.host=127.0.0.1 -Dreplicate.master.queue.port=5672 -Dreplicate.master.servlet.port=8888 -Dreplicate.master.servlet.host=127.0.0.1 -Dreplicate.master.exchange.name=sapsailinganalytics -Dreplicate.master.username=admin -Dreplicate.master.password=admin -DAnniversaryRaceDeterminator.enabled=true -Djava.naming.factory.url.pkgs=org.eclipse.jetty.jndi -Djava.naming.factory.initial=org.eclipse.jetty.jndi.InitialContextFactory -Dorg.eclipse.jetty.annotations.maxWait=120 -Dsubscriptions.disableMailVerificationRequirement=true -Dmanage2sail.accesstoken=${MANAGE2SAIL_ACCESS_TOKEN} -Dgoogle.maps.authenticationparams=${GOOGLE_MAPS_AUTHENTICATION_PARAMS} -Digtimi.riot.port=6001"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc}"/>
|
||||
<stringAttribute key="pde.version" value="3.3"/>
|
||||
<setAttribute key="selected_target_bundles">
|
||||
<setEntry value="routeconverter@default:default"/>
|
||||
<setEntry value="org.apache.commons.codec@default:default"/>
|
||||
<setEntry value="org.apache.poi@default:default"/>
|
||||
<setEntry value="org.apache.poi.ooxml@default:default"/>
|
||||
<setEntry value="org.apache.poi.ooxml.schemas@default:default"/>
|
||||
<setEntry value="org.apache.commons.collections4@default:default"/>
|
||||
<setEntry value="org.apache.commons.compress@default:default"/>
|
||||
<setEntry value="org.apache.poi.source@default:default"/>
|
||||
<setEntry value="org.apache.poi.ooxml.source@default:default"/>
|
||||
<setEntry value="org.apache.commons.collections4.source@default:default"/>
|
||||
<setEntry value="org.apache.commons.compress.source@default:default"/>
|
||||
<setEntry value="org.dom4j@default:default"/>
|
||||
<setEntry value="org.apache.xmlbeans@default:default"/>
|
||||
<setEntry value="org.apache.commons.math@default:default"/>
|
||||
<setEntry value="org.apache.httpcomponents.httpclient@default:default"/>
|
||||
<setEntry value="org.apache.httpcomponents.httpcore@default:default"/>
|
||||
<setEntry value="org.hyperic.sigar@default:default"/>
|
||||
<setEntry value="com.sun.jersey.contribs.jersey-multipart@default:default"/>
|
||||
<setEntry value="javax.validation@default:default"/>
|
||||
<setEntry value="org.apache.commons.fileupload@default:default"/>
|
||||
<setEntry value="org.jvnet.mimepull@default:default"/>
|
||||
<setEntry value="org.apache.commons.math3@default:default"/>
|
||||
<setEntry value="org.mongodb.driver-core@default:default"/>
|
||||
<setEntry value="org.mongodb.driver-core.source@default:default"/>
|
||||
<setEntry value="org.mongodb.bson@default:default"/>
|
||||
<setEntry value="org.mongodb.bson.source@default:default"/>
|
||||
<setEntry value="org.mongodb.driver-sync@default:default"/>
|
||||
<setEntry value="org.mongodb.driver-sync@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot@3:true"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot.warurl@default:default"/>
|
||||
<setEntry value="org.hyperic.sigar@default:default"/>
|
||||
<setEntry value="slf4j.jdk14@default:default"/>
|
||||
<setEntry value="lz4-java@default:default"/>
|
||||
<setEntry value="org.apache.felix.gogo.command@default:default"/>
|
||||
<setEntry value="org.apache.felix.gogo.runtime@default:default"/>
|
||||
<setEntry value="org.apache.felix.gogo.shell@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.deploy@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.deploy.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.http@3:true"/>
|
||||
<setEntry value="org.eclipse.jetty.http.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.io@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.io.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.jmx@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.jmx.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.security@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.security.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.server@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.server.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.servlet@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.servlet.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.util@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.util.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.util.ajax@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.util.ajax.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.webapp@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.webapp.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.api@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.api.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.client@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.client.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.common@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.common.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.server@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.server.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.servlet@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.servlet.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.xml@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.xml.source@default:default"/>
|
||||
<setEntry value="slf4j.api@default:default"/>
|
||||
<setEntry value="org.apache.servicemix.bundles.zxing@default:default"/>
|
||||
<setEntry value="org.apache.commons.io@default:default"/>
|
||||
<setEntry value="jcl.over.slf4j@default:default"/>
|
||||
<setEntry value="jul.to.slf4j@default:default"/>
|
||||
<setEntry value="com.sun.mail.javax.mail@default:default"/>
|
||||
<setEntry value="com.rabbitmq.client@default:default"/>
|
||||
<setEntry value="com.rabbitmq.client.source@default:default"/>
|
||||
<setEntry value="org.apache.commons.lang@default:default"/>
|
||||
<setEntry value="org.apache.commons.logging@default:default"/>
|
||||
<setEntry value="jackson-jaxrs@default:default"/>
|
||||
<setEntry value="com.sun.jersey@default:default"/>
|
||||
<setEntry value="javax.ws.rs@default:default"/>
|
||||
<setEntry value="org.apache.commons.beanutils@default:default"/>
|
||||
<setEntry value="org.apache.commons.beanutils.source@default:default"/>
|
||||
<setEntry value="org.apache.servicemix.bundles.ehcache@default:default"/>
|
||||
<setEntry value="org.apache.servicemix.bundles.scribe@default:default"/>
|
||||
<setEntry value="org.owasp.encoder@default:default"/>
|
||||
<setEntry value="org.owasp.encoder.source@default:default"/>
|
||||
<setEntry value="org.apache.shiro.core@default:default"/>
|
||||
<setEntry value="org.apache.shiro.core.source@default:default"/>
|
||||
<setEntry value="org.apache.shiro.ehcache@default:default"/>
|
||||
<setEntry value="org.apache.shiro.ehcache.source@default:default"/>
|
||||
<setEntry value="org.apache.shiro.web@default:default"/>
|
||||
<setEntry value="org.apache.shiro.web.source@default:default"/>
|
||||
<setEntry value="jackson-core-asl@default:default"/>
|
||||
<setEntry value="jackson-mapper-asl@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.core.jackson-core@default:default"/>
|
||||
<setEntry value="org.apache.commons.collections@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.client@default:default"/>
|
||||
<setEntry value="javax.xml@default:default"/>
|
||||
<setEntry value="com.sun.activation.javax.activation@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.common@2:true"/>
|
||||
<setEntry value="org.eclipse.equinox.console@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.launcher@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.simpleconfigurator@2:true"/>
|
||||
<setEntry value="org.eclipse.osgi@-1:true"/>
|
||||
<setEntry value="org.eclipse.osgi.source@default:default"/>
|
||||
<setEntry value="org.osgi.util.promise@default:default"/>
|
||||
<setEntry value="org.osgi.util.promise.source@default:default"/>
|
||||
<setEntry value="org.osgi.util.function@default:default"/>
|
||||
<setEntry value="org.osgi.util.function.source@default:default"/>
|
||||
<setEntry value="org.osgi.util.measurement@default:default"/>
|
||||
<setEntry value="org.osgi.util.measurement.source@default:default"/>
|
||||
<setEntry value="org.osgi.util.position@default:default"/>
|
||||
<setEntry value="org.osgi.util.position.source@default:default"/>
|
||||
<setEntry value="org.osgi.util.xml@default:default"/>
|
||||
<setEntry value="org.osgi.util.xml.source@default:default"/>
|
||||
<setEntry value="org.eclipse.osgi.services@default:default"/>
|
||||
<setEntry value="org.eclipse.osgi.services.source@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.cm@default:default"/>
|
||||
<setEntry value="com.sun.istack.commons-runtime@default:default"/>
|
||||
<setEntry value="com.sun.xml.bind.jaxb-impl@default:default"/>
|
||||
<setEntry value="javax.xml.stream@default:default"/>
|
||||
<setEntry value="javax.xml.ws@default:default"/>
|
||||
<setEntry value="javax.xml.soap@default:default"/>
|
||||
<setEntry value="org.eclipse.osgi.util@default:default"/>
|
||||
<setEntry value="org.eclipse.osgi.util.source@default:default"/>
|
||||
<setEntry value="com.chargebee.chargebee-java@default:default"/>
|
||||
<setEntry value="com.github.mwiede.jsch@default:default"/>
|
||||
<setEntry value="com.github.mwiede.jsch.source@default:default"/>
|
||||
<setEntry value="bcprov-ext@default:default"/>
|
||||
<setEntry value="com.amazon.aws.aws-java-api@default:default"/>
|
||||
<setEntry value="com.amazon.aws.aws-java-api.source@default:default"/>
|
||||
<setEntry value="org.objectweb.asm@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.commons@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.analysis@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.tree@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.util@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.source@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.analysis.source@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.commons.source@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.tree.source@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.util.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.apache-jsp@4:true"/>
|
||||
<setEntry value="org.eclipse.jetty.apache-jsp.source@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot.jsp@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot.jsp.source@default:default"/>
|
||||
<setEntry value="org.apache.geronimo.specs.geronimo-jta_1.1_spec@default:default"/>
|
||||
<setEntry value="org.apache.aries.spifly.dynamic.bundle@3:true"/>
|
||||
<setEntry value="org.apache.aries.spifly.dynamic.bundle.source@default:default"/>
|
||||
<setEntry value="org.mortbay.jasper.apache-el@default:default"/>
|
||||
<setEntry value="org.mortbay.jasper.apache-jsp@default:default"/>
|
||||
<setEntry value="org.eclipse.jdt.core.compiler.batch@default:default"/>
|
||||
<setEntry value="org.apache.taglibs.standard-impl@default:default"/>
|
||||
<setEntry value="org.apache.taglibs.taglibs-standard-spec@default:default"/>
|
||||
<setEntry value="javax.annotation@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi-servlet-api@default:default"/>
|
||||
<setEntry value="org.apache.xalan@default:default"/>
|
||||
<setEntry value="org.apache.xml.serializer@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.event@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.annotations@4:true"/>
|
||||
<setEntry value="org.eclipse.jetty.jndi@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.plus@default:default"/>
|
||||
<setEntry value="com.sap.db.jdbc@default:default"/>
|
||||
<setEntry value="com.sap.db.jdbc.source@default:default"/>
|
||||
<setEntry value="org.osgi.service.component@default:default"/>
|
||||
<setEntry value="org.osgi.service.cm@default:default"/>
|
||||
<setEntry value="org.osgi.util.tracker@default:default"/>
|
||||
<setEntry value="org.osgi.service.event@default:default"/>
|
||||
<setEntry value="org.osgi.service.packageadmin@default:default"/>
|
||||
<setEntry value="org.osgi.service.url@default:default"/>
|
||||
<setEntry value="redisson@default:default"/>
|
||||
<setEntry value="com.esotericsoftware.kryo@default:default"/>
|
||||
<setEntry value="com.esotericsoftware.reflectasm@default:default"/>
|
||||
<setEntry value="com.esotericsoftware.minlog@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.core.jackson-annotations@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.core.jackson-databind@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.dataformat.jackson-dataformat-yaml@default:default"/>
|
||||
<setEntry value="org.yaml.snakeyaml@default:default"/>
|
||||
<setEntry value="io.netty.transport@default:default"/>
|
||||
<setEntry value="io.netty.buffer@default:default"/>
|
||||
<setEntry value="io.netty.common@default:default"/>
|
||||
<setEntry value="io.netty.resolver@default:default"/>
|
||||
<setEntry value="io.netty.transport-classes-epoll@default:default"/>
|
||||
<setEntry value="io.netty.transport-native-unix-common@default:default"/>
|
||||
<setEntry value="io.netty.transport-classes-kqueue@default:default"/>
|
||||
<setEntry value="io.netty.codec@default:default"/>
|
||||
<setEntry value="io.netty.handler@default:default"/>
|
||||
<setEntry value="io.netty.resolver-dns@default:default"/>
|
||||
<setEntry value="io.netty.codec-dns@default:default"/>
|
||||
<setEntry value="io.netty.incubator.netty-incubator-transport-classes-io_uring@default:default"/>
|
||||
<setEntry value="io.reactivex.rxjava3.rxjava@default:default"/>
|
||||
<setEntry value="reactive-streams@default:default"/>
|
||||
<setEntry value="javax.cache.api@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-core@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-core.source@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-data@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-data.source@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-graph@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-graph.source@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-math@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-math.source@default:default"/>
|
||||
<setEntry value="com.google.gson@default:default"/>
|
||||
<setEntry value="com.google.gson.source@default:default"/>
|
||||
<setEntry value="jodd-bean@default:default"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy@default:default"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy.source@default:default"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy-agent@default:default"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy-agent.source@default:default"/>
|
||||
<setEntry value="org.jboss.marshalling.jboss-marshalling-osgi@default:default"/>
|
||||
<setEntry value="io.projectreactor.reactor-core@default:default"/>
|
||||
<setEntry value="com.diffplug.osgi.extension.sun.misc@default:default"/>
|
||||
<setEntry value="com.google.protobuf@default:default"/>
|
||||
<setEntry value="com.google.protobuf.source@default:default"/>
|
||||
</setAttribute>
|
||||
<setEntry value="bcprov-ext@default:default"/>
|
||||
<setEntry value="com.amazon.aws.aws-java-api.source"/>
|
||||
<setEntry value="com.amazon.aws.aws-java-api@default:default"/>
|
||||
<setEntry value="com.chargebee.chargebee-java@default:default"/>
|
||||
<setEntry value="com.diffplug.osgi.extension.sun.misc@default:false"/>
|
||||
<setEntry value="com.esotericsoftware.kryo@default:default"/>
|
||||
<setEntry value="com.esotericsoftware.minlog@default:default"/>
|
||||
<setEntry value="com.esotericsoftware.reflectasm@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.core.jackson-annotations@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.core.jackson-core@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.core.jackson-databind@default:default"/>
|
||||
<setEntry value="com.fasterxml.jackson.dataformat.jackson-dataformat-yaml@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-core.source"/>
|
||||
<setEntry value="com.github.haifengl.smile-core@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-data.source"/>
|
||||
<setEntry value="com.github.haifengl.smile-data@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-graph.source"/>
|
||||
<setEntry value="com.github.haifengl.smile-graph@default:default"/>
|
||||
<setEntry value="com.github.haifengl.smile-math.source"/>
|
||||
<setEntry value="com.github.haifengl.smile-math@default:default"/>
|
||||
<setEntry value="com.github.mwiede.jsch.source"/>
|
||||
<setEntry value="com.github.mwiede.jsch@default:default"/>
|
||||
<setEntry value="com.google.gson.source"/>
|
||||
<setEntry value="com.google.gson@default:default"/>
|
||||
<setEntry value="com.google.protobuf.source"/>
|
||||
<setEntry value="com.google.protobuf@default:default"/>
|
||||
<setEntry value="com.rabbitmq.client.source"/>
|
||||
<setEntry value="com.rabbitmq.client@default:default"/>
|
||||
<setEntry value="com.sap.db.jdbc.source"/>
|
||||
<setEntry value="com.sap.db.jdbc@default:default"/>
|
||||
<setEntry value="com.sun.activation.javax.activation@default:default"/>
|
||||
<setEntry value="com.sun.istack.commons-runtime@default:default"/>
|
||||
<setEntry value="com.sun.jersey.contribs.jersey-multipart@default:default"/>
|
||||
<setEntry value="com.sun.jersey@default:default"/>
|
||||
<setEntry value="com.sun.mail.javax.mail@default:default"/>
|
||||
<setEntry value="com.sun.xml.bind.jaxb-impl@default:default"/>
|
||||
<setEntry value="io.netty.buffer@default:default"/>
|
||||
<setEntry value="io.netty.codec-dns@default:default"/>
|
||||
<setEntry value="io.netty.codec@default:default"/>
|
||||
<setEntry value="io.netty.common@default:default"/>
|
||||
<setEntry value="io.netty.handler@default:default"/>
|
||||
<setEntry value="io.netty.incubator.netty-incubator-transport-classes-io_uring@default:default"/>
|
||||
<setEntry value="io.netty.resolver-dns@default:default"/>
|
||||
<setEntry value="io.netty.resolver@default:default"/>
|
||||
<setEntry value="io.netty.transport-classes-epoll@default:default"/>
|
||||
<setEntry value="io.netty.transport-classes-kqueue@default:default"/>
|
||||
<setEntry value="io.netty.transport-native-unix-common@default:default"/>
|
||||
<setEntry value="io.netty.transport@default:default"/>
|
||||
<setEntry value="io.projectreactor.reactor-core@default:default"/>
|
||||
<setEntry value="io.reactivex.rxjava3.rxjava@default:default"/>
|
||||
<setEntry value="jackson-core-asl@default:default"/>
|
||||
<setEntry value="jackson-jaxrs@default:default"/>
|
||||
<setEntry value="jackson-mapper-asl@default:default"/>
|
||||
<setEntry value="javax.annotation@default:default"/>
|
||||
<setEntry value="javax.cache.api@default:default"/>
|
||||
<setEntry value="javax.validation@default:default"/>
|
||||
<setEntry value="javax.ws.rs@default:default"/>
|
||||
<setEntry value="javax.xml.soap@default:default"/>
|
||||
<setEntry value="javax.xml.stream@default:default"/>
|
||||
<setEntry value="javax.xml.ws@default:default"/>
|
||||
<setEntry value="javax.xml@default:default"/>
|
||||
<setEntry value="jcl.over.slf4j@default:default"/>
|
||||
<setEntry value="jodd-bean@default:default"/>
|
||||
<setEntry value="jul.to.slf4j@default:default"/>
|
||||
<setEntry value="lz4-java@default:default"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy-agent.source"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy-agent@default:default"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy.source"/>
|
||||
<setEntry value="net.bytebuddy.byte-buddy@default:default"/>
|
||||
<setEntry value="org.apache.aries.spifly.dynamic.bundle.source"/>
|
||||
<setEntry value="org.apache.aries.spifly.dynamic.bundle@3:true"/>
|
||||
<setEntry value="org.apache.commons.beanutils.source@default:default"/>
|
||||
<setEntry value="org.apache.commons.beanutils@default:default"/>
|
||||
<setEntry value="org.apache.commons.codec@default:default"/>
|
||||
<setEntry value="org.apache.commons.collections4.source"/>
|
||||
<setEntry value="org.apache.commons.collections4@default:default"/>
|
||||
<setEntry value="org.apache.commons.collections@default:default"/>
|
||||
<setEntry value="org.apache.commons.compress.source"/>
|
||||
<setEntry value="org.apache.commons.compress@default:default"/>
|
||||
<setEntry value="org.apache.commons.fileupload@default:default"/>
|
||||
<setEntry value="org.apache.commons.io@default:default"/>
|
||||
<setEntry value="org.apache.commons.lang@default:default"/>
|
||||
<setEntry value="org.apache.commons.logging@default:default"/>
|
||||
<setEntry value="org.apache.commons.math3@default:default"/>
|
||||
<setEntry value="org.apache.commons.math@default:default"/>
|
||||
<setEntry value="org.apache.felix.gogo.command@default:default"/>
|
||||
<setEntry value="org.apache.felix.gogo.runtime@default:default"/>
|
||||
<setEntry value="org.apache.felix.gogo.shell@default:default"/>
|
||||
<setEntry value="org.apache.geronimo.specs.geronimo-jta_1.1_spec@default:default"/>
|
||||
<setEntry value="org.apache.httpcomponents.httpclient@default:default"/>
|
||||
<setEntry value="org.apache.httpcomponents.httpcore@default:default"/>
|
||||
<setEntry value="org.apache.poi.ooxml.schemas@default:default"/>
|
||||
<setEntry value="org.apache.poi.ooxml.source"/>
|
||||
<setEntry value="org.apache.poi.ooxml@default:default"/>
|
||||
<setEntry value="org.apache.poi.source"/>
|
||||
<setEntry value="org.apache.poi@default:default"/>
|
||||
<setEntry value="org.apache.servicemix.bundles.ehcache@default:default"/>
|
||||
<setEntry value="org.apache.servicemix.bundles.scribe@default:default"/>
|
||||
<setEntry value="org.apache.servicemix.bundles.zxing@default:default"/>
|
||||
<setEntry value="org.apache.shiro.core.source"/>
|
||||
<setEntry value="org.apache.shiro.core@default:default"/>
|
||||
<setEntry value="org.apache.shiro.ehcache.source"/>
|
||||
<setEntry value="org.apache.shiro.ehcache@default:default"/>
|
||||
<setEntry value="org.apache.shiro.web.source"/>
|
||||
<setEntry value="org.apache.shiro.web@default:default"/>
|
||||
<setEntry value="org.apache.taglibs.standard-impl@default:default"/>
|
||||
<setEntry value="org.apache.taglibs.taglibs-standard-spec@default:default"/>
|
||||
<setEntry value="org.apache.xalan@default:default"/>
|
||||
<setEntry value="org.apache.xml.serializer@default:default"/>
|
||||
<setEntry value="org.apache.xmlbeans@default:default"/>
|
||||
<setEntry value="org.dom4j@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.cm@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.common@2:true"/>
|
||||
<setEntry value="org.eclipse.equinox.console@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.event@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.launcher@default:default"/>
|
||||
<setEntry value="org.eclipse.equinox.simpleconfigurator@2:true"/>
|
||||
<setEntry value="org.eclipse.jdt.core.compiler.batch@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.annotations@4:true"/>
|
||||
<setEntry value="org.eclipse.jetty.apache-jsp.source"/>
|
||||
<setEntry value="org.eclipse.jetty.apache-jsp@4:true"/>
|
||||
<setEntry value="org.eclipse.jetty.client@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.deploy.source"/>
|
||||
<setEntry value="org.eclipse.jetty.deploy@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.http.source"/>
|
||||
<setEntry value="org.eclipse.jetty.http@3:true"/>
|
||||
<setEntry value="org.eclipse.jetty.io.source"/>
|
||||
<setEntry value="org.eclipse.jetty.io@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.jmx.source"/>
|
||||
<setEntry value="org.eclipse.jetty.jmx@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.jndi@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi-servlet-api@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot.jsp.source"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot.jsp@default:false"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot.warurl@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.osgi.boot@3:true"/>
|
||||
<setEntry value="org.eclipse.jetty.plus@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.security.source"/>
|
||||
<setEntry value="org.eclipse.jetty.security@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.server.source"/>
|
||||
<setEntry value="org.eclipse.jetty.server@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.servlet.source"/>
|
||||
<setEntry value="org.eclipse.jetty.servlet@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.util.ajax.source"/>
|
||||
<setEntry value="org.eclipse.jetty.util.ajax@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.util.source"/>
|
||||
<setEntry value="org.eclipse.jetty.util@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.webapp.source"/>
|
||||
<setEntry value="org.eclipse.jetty.webapp@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.api.source"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.api@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.client.source"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.client@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.common.source"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.common@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.server.source"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.server@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.servlet.source"/>
|
||||
<setEntry value="org.eclipse.jetty.websocket.servlet@default:default"/>
|
||||
<setEntry value="org.eclipse.jetty.xml.source"/>
|
||||
<setEntry value="org.eclipse.jetty.xml@default:default"/>
|
||||
<setEntry value="org.eclipse.osgi.services.source"/>
|
||||
<setEntry value="org.eclipse.osgi.services@default:default"/>
|
||||
<setEntry value="org.eclipse.osgi.source"/>
|
||||
<setEntry value="org.eclipse.osgi.util.source"/>
|
||||
<setEntry value="org.eclipse.osgi.util@default:default"/>
|
||||
<setEntry value="org.eclipse.osgi@-1:true"/>
|
||||
<setEntry value="org.hyperic.sigar@default:default"/>
|
||||
<setEntry value="org.jboss.marshalling.jboss-marshalling-osgi@default:default"/>
|
||||
<setEntry value="org.jvnet.mimepull@default:default"/>
|
||||
<setEntry value="org.mongodb.bson.source"/>
|
||||
<setEntry value="org.mongodb.bson@default:default"/>
|
||||
<setEntry value="org.mongodb.driver-core.source"/>
|
||||
<setEntry value="org.mongodb.driver-core@default:default"/>
|
||||
<setEntry value="org.mongodb.driver-sync@default:default"/>
|
||||
<setEntry value="org.mortbay.jasper.apache-el@default:default"/>
|
||||
<setEntry value="org.mortbay.jasper.apache-jsp@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.analysis.source"/>
|
||||
<setEntry value="org.objectweb.asm.analysis@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.commons.source"/>
|
||||
<setEntry value="org.objectweb.asm.commons@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.source"/>
|
||||
<setEntry value="org.objectweb.asm.tree.source"/>
|
||||
<setEntry value="org.objectweb.asm.tree@default:default"/>
|
||||
<setEntry value="org.objectweb.asm.util.source"/>
|
||||
<setEntry value="org.objectweb.asm.util@default:default"/>
|
||||
<setEntry value="org.objectweb.asm@default:default"/>
|
||||
<setEntry value="org.osgi.service.cm@default:default"/>
|
||||
<setEntry value="org.osgi.service.component@default:default"/>
|
||||
<setEntry value="org.osgi.service.event@default:default"/>
|
||||
<setEntry value="org.osgi.service.packageadmin@default:default"/>
|
||||
<setEntry value="org.osgi.service.url@default:default"/>
|
||||
<setEntry value="org.osgi.util.function.source"/>
|
||||
<setEntry value="org.osgi.util.function@default:default"/>
|
||||
<setEntry value="org.osgi.util.measurement.source"/>
|
||||
<setEntry value="org.osgi.util.measurement@default:default"/>
|
||||
<setEntry value="org.osgi.util.position.source"/>
|
||||
<setEntry value="org.osgi.util.position@default:default"/>
|
||||
<setEntry value="org.osgi.util.promise.source"/>
|
||||
<setEntry value="org.osgi.util.promise@default:default"/>
|
||||
<setEntry value="org.osgi.util.tracker@default:default"/>
|
||||
<setEntry value="org.osgi.util.xml.source"/>
|
||||
<setEntry value="org.osgi.util.xml@default:default"/>
|
||||
<setEntry value="org.owasp.encoder.source"/>
|
||||
<setEntry value="org.owasp.encoder@default:default"/>
|
||||
<setEntry value="org.yaml.snakeyaml@default:default"/>
|
||||
<setEntry value="reactive-streams@default:default"/>
|
||||
<setEntry value="redisson@default:default"/>
|
||||
<setEntry value="routeconverter@default:default"/>
|
||||
<setEntry value="slf4j.api@default:default"/>
|
||||
<setEntry value="slf4j.jdk14@default:default"/>
|
||||
</setAttribute>
|
||||
<setAttribute key="selected_workspace_bundles">
|
||||
<setEntry value="com.sap.sailing.geocoding@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.common@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain@default:default"/>
|
||||
<setEntry value="com.sap.sailing.news@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.tractracadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.expeditionconnector@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.windfinderadapter@4:true"/>
|
||||
<setEntry value="com.sap.sailing.server@5:true"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway.interfaces@default:default"/>
|
||||
<setEntry value="com.sap.sailing.declination@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.swisstimingadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.swisstimingadapter.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.swisstimingreplayadapter@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.tractracadapter.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.gwt.ui@6:true"/>
|
||||
<setEntry value="com.sap.sailing.udpconnector@default:default"/>
|
||||
<setEntry value="com.sap.sailing.simulator@default:default"/>
|
||||
<setEntry value="com.sap.sailing.www@5:true"/>
|
||||
<setEntry value="com.sap.sailing.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.kiworesultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.ess40.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.freg.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.barbados.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.sailwave.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.manage2sail.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.sailti.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.yachtscoring.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.velum.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.monitoring@7:true"/>
|
||||
<setEntry value="com.sap.sailing.xrr.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter.server@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.racelogtrackingadapter@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.deckmanadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.oceanraceadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.yellowbrickadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.yellowbrickadapter.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.xrr.structureimport@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway.serialization.shared.android@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway.serialization@default:default"/>
|
||||
<setEntry value="com.sap.sailing.dashboards.gwt@6:true"/>
|
||||
<setEntry value="com.sap.sailing.dashboards.gwt@6:true"/>
|
||||
<setEntry value="com.sap.sailing.datamining@5:true"/>
|
||||
<setEntry value="com.sap.sailing.datamining.shared@default:default"/>
|
||||
<setEntry value="com.sap.sailing.polars@5:true"/>
|
||||
<setEntry value="com.sap.sailing.windestimation@5:true"/>
|
||||
<setEntry value="com.sap.sailing.polars.datamining@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.shared.android@default:default"/>
|
||||
<setEntry value="com.sap.sailing.manage2sail@default:default"/>
|
||||
<setEntry value="com.sap.sailing.polars.datamining.shared@default:default"/>
|
||||
<setEntry value="com.sap.sailing.xrr.schema@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.trackfiles@default:default"/>
|
||||
<setEntry value="com.sap.sailing.competitorimport@default:default"/>
|
||||
<setEntry value="com.sap.sailing.datamining.provider@default:default"/>
|
||||
<setEntry value="com.sap.sailing.grib@default:default"/>
|
||||
<setEntry value="com.sap.sailing.nmeaconnector@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.expeditionadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.expeditionconnector.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.expeditionconnector.common@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.bravoadapter@5:true"/>
|
||||
<setEntry value="net.sf.marineapi@default:default"/>
|
||||
<setEntry value="com.sap.sailing.routeconverterjava11extension@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.interface@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining.ui@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.shared.server@5:true"/>
|
||||
<setEntry value="com.sap.sailing.shared.server.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.shared.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sailing.landscape@default:default"/>
|
||||
<setEntry value="com.sap.sailing.landscape.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.landscape.common@default:default"/>
|
||||
<setEntry value="com.sap.sailing.landscape.ui@default:default"/>
|
||||
<setEntry value="com.sap.sailing.hanaexport@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.queclinkadapter@5:true"/>
|
||||
<setEntry value="com.tractrac.clientmodule@default:default"/>
|
||||
<setEntry value="com.sap.sse.gwt@default:default"/>
|
||||
<setEntry value="com.google.gwt.servlet@default:default"/>
|
||||
<setEntry value="com.sap.sse.security@default:default"/>
|
||||
<setEntry value="com.sap.sse.security.ui@6:true"/>
|
||||
<setEntry value="com.sap.sse.security.userstore.mongodb@4:true"/>
|
||||
<setEntry value="com.sap.sse@default:default"/>
|
||||
<setEntry value="com.sap.sse.common@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining.annotations@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining.shared@default:default"/>
|
||||
<setEntry value="com.sap.sse.gwt.adminconsole@default:default"/>
|
||||
<setEntry value="com.sap.sse.mongodb@default:default"/>
|
||||
<setEntry value="com.sap.sse.operationaltransformation@default:default"/>
|
||||
<setEntry value="com.sap.sse.replication@6:true"/>
|
||||
<setEntry value="com.sap.sse.filestorage@4:true"/>
|
||||
<setEntry value="com.sap.sse.shared.android@default:default"/>
|
||||
<setEntry value="com.sap.sse.mail@5:true"/>
|
||||
<setEntry value="com.sap.sse.threadmanager@default:default"/>
|
||||
<setEntry value="com.sap.sse.security.common@default:default"/>
|
||||
<setEntry value="org.json.simple@default:default"/>
|
||||
<setEntry value="org.moxieapps.gwt.highcharts@default:default"/>
|
||||
<setEntry value="com.googlecode.java-diff-utils@default:default"/>
|
||||
<setEntry value="org.mp4parser.isoparser@default:default"/>
|
||||
<setEntry value="com.sap.sse.replication.interfaces@default:default"/>
|
||||
<setEntry value="com.sap.sse.security.datamining@5:true"/>
|
||||
<setEntry value="com.sap.sse.security.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sse.security.interface@default:default"/>
|
||||
<setEntry value="com.sap.sse.replication.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape.common@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape.aws@4:true"/>
|
||||
<setEntry value="com.sap.sse.landscape.aws.common@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape.aws.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sse.debranding@default:default"/>
|
||||
<setEntry value="elemental2@default:default"/>
|
||||
</setAttribute>
|
||||
<setEntry value="com.google.gwt.servlet@default:default"/>
|
||||
<setEntry value="com.googlecode.java-diff-utils@default:default"/>
|
||||
<setEntry value="com.sap.sailing.barbados.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.competitorimport@default:default"/>
|
||||
<setEntry value="com.sap.sailing.dashboards.gwt@6:true"/>
|
||||
<setEntry value="com.sap.sailing.datamining.provider@default:default"/>
|
||||
<setEntry value="com.sap.sailing.datamining.shared@default:default"/>
|
||||
<setEntry value="com.sap.sailing.datamining@5:true"/>
|
||||
<setEntry value="com.sap.sailing.declination@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.bravoadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.common@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.deckmanadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.expeditionadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter.server@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.igtimiadapter@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.oceanraceadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.racelogtrackingadapter@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.shared.android@default:default"/>
|
||||
<setEntry value="com.sap.sailing.domain.swisstimingadapter.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.swisstimingadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.swisstimingreplayadapter@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.tractracadapter.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.tractracadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.windfinderadapter@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.yellowbrickadapter.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.domain.yellowbrickadapter@5:true"/>
|
||||
<setEntry value="com.sap.sailing.domain@default:default"/>
|
||||
<setEntry value="com.sap.sailing.ess40.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.expeditionconnector.common@default:default"/>
|
||||
<setEntry value="com.sap.sailing.expeditionconnector.persistence@4:true"/>
|
||||
<setEntry value="com.sap.sailing.expeditionconnector@default:default"/>
|
||||
<setEntry value="com.sap.sailing.freg.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.geocoding@default:default"/>
|
||||
<setEntry value="com.sap.sailing.grib@default:default"/>
|
||||
<setEntry value="com.sap.sailing.gwt.ui@6:true"/>
|
||||
<setEntry value="com.sap.sailing.hanaexport@5:true"/>
|
||||
<setEntry value="com.sap.sailing.kiworesultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.landscape.common@default:default"/>
|
||||
<setEntry value="com.sap.sailing.landscape.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.landscape.ui@default:default"/>
|
||||
<setEntry value="com.sap.sailing.landscape@default:default"/>
|
||||
<setEntry value="com.sap.sailing.manage2sail.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.manage2sail@default:default"/>
|
||||
<setEntry value="com.sap.sailing.monitoring@7:true"/>
|
||||
<setEntry value="com.sap.sailing.news@4:true"/>
|
||||
<setEntry value="com.sap.sailing.nmeaconnector@default:default"/>
|
||||
<setEntry value="com.sap.sailing.polars.datamining.shared@default:default"/>
|
||||
<setEntry value="com.sap.sailing.polars.datamining@5:true"/>
|
||||
<setEntry value="com.sap.sailing.polars@5:true"/>
|
||||
<setEntry value="com.sap.sailing.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.routeconverterjava11extension@default:false"/>
|
||||
<setEntry value="com.sap.sailing.sailti.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.sailwave.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway.interfaces@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway.serialization.shared.android@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway.serialization@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.server.interface@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server.trackfiles@default:default"/>
|
||||
<setEntry value="com.sap.sailing.server@5:true"/>
|
||||
<setEntry value="com.sap.sailing.shared.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sailing.shared.server.gateway@5:true"/>
|
||||
<setEntry value="com.sap.sailing.shared.server@5:true"/>
|
||||
<setEntry value="com.sap.sailing.simulator@default:default"/>
|
||||
<setEntry value="com.sap.sailing.udpconnector@default:default"/>
|
||||
<setEntry value="com.sap.sailing.velum.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.windestimation@5:true"/>
|
||||
<setEntry value="com.sap.sailing.www@5:true"/>
|
||||
<setEntry value="com.sap.sailing.xrr.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sailing.xrr.schema@default:default"/>
|
||||
<setEntry value="com.sap.sailing.xrr.structureimport@default:default"/>
|
||||
<setEntry value="com.sap.sailing.yachtscoring.resultimport@4:true"/>
|
||||
<setEntry value="com.sap.sse.common@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining.annotations@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining.shared@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining.ui@default:default"/>
|
||||
<setEntry value="com.sap.sse.datamining@default:default"/>
|
||||
<setEntry value="com.sap.sse.debranding@default:default"/>
|
||||
<setEntry value="com.sap.sse.filestorage@4:true"/>
|
||||
<setEntry value="com.sap.sse.gwt.adminconsole@default:default"/>
|
||||
<setEntry value="com.sap.sse.gwt@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape.aws.common@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape.aws.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape.aws@4:true"/>
|
||||
<setEntry value="com.sap.sse.landscape.common@default:default"/>
|
||||
<setEntry value="com.sap.sse.landscape@default:default"/>
|
||||
<setEntry value="com.sap.sse.mail@5:true"/>
|
||||
<setEntry value="com.sap.sse.mongodb@default:default"/>
|
||||
<setEntry value="com.sap.sse.operationaltransformation@default:default"/>
|
||||
<setEntry value="com.sap.sse.replication.interfaces@default:default"/>
|
||||
<setEntry value="com.sap.sse.replication.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sse.replication@6:true"/>
|
||||
<setEntry value="com.sap.sse.security.common@default:default"/>
|
||||
<setEntry value="com.sap.sse.security.datamining@5:true"/>
|
||||
<setEntry value="com.sap.sse.security.interface@default:default"/>
|
||||
<setEntry value="com.sap.sse.security.persistence@default:default"/>
|
||||
<setEntry value="com.sap.sse.security.ui@6:true"/>
|
||||
<setEntry value="com.sap.sse.security.userstore.mongodb@4:true"/>
|
||||
<setEntry value="com.sap.sse.security@default:default"/>
|
||||
<setEntry value="com.sap.sse.shared.android@default:default"/>
|
||||
<setEntry value="com.sap.sse.threadmanager@default:default"/>
|
||||
<setEntry value="com.sap.sse@default:default"/>
|
||||
<setEntry value="com.tractrac.clientmodule@default:default"/>
|
||||
<setEntry value="elemental2@default:default"/>
|
||||
<setEntry value="net.sf.marineapi@default:default"/>
|
||||
<setEntry value="org.json.simple@default:default"/>
|
||||
<setEntry value="org.moxieapps.gwt.highcharts@default:default"/>
|
||||
<setEntry value="org.mp4parser.isoparser@default:default"/>
|
||||
</setAttribute>
|
||||
<booleanAttribute key="show_selected_only" value="false"/>
|
||||
<booleanAttribute key="tracing" value="false"/>
|
||||
<booleanAttribute key="useCustomFeatures" value="false"/>
|
||||
|
||||
Reference in New Issue
Block a user