Merge branch 'master' into github-readme

This commit is contained in:
Axel Uhl
2024-04-18 11:46:08 +02:00
271 changed files with 2110 additions and 1481 deletions
@@ -48,6 +48,7 @@ import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
import com.sap.sailing.gwt.ui.client.StringMessages;
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
import com.sap.sse.common.Util.Triple;
import com.sap.sse.common.fileupload.FileUploadUtil;
import com.sap.sse.gwt.client.ErrorReporter;
import com.sap.sse.gwt.client.IconResources;
import com.sap.sse.gwt.client.Notification;
@@ -58,7 +59,6 @@ import com.sap.sse.gwt.client.controls.busyindicator.BusyIndicator;
import com.sap.sse.gwt.client.controls.busyindicator.SimpleBusyIndicator;
import com.sap.sse.gwt.client.controls.listedit.StringListEditorComposite;
import com.sap.sse.gwt.client.dialog.DialogUtils;
import com.sap.sse.gwt.client.fileupload.FileUploadUtil;
import com.sap.sse.security.shared.HasPermissions.DefaultActions;
import com.sap.sse.security.shared.dto.SecuredDTO;
import com.sap.sse.security.ui.client.UserService;
@@ -255,9 +255,9 @@ public abstract class AbstractBoatCertificatesPanel extends SimplePanel {
private void formSubmitComplete(SubmitCompleteEvent e) {
try {
final JSONObject json = (JSONObject) JSONParser.parseStrict(FileUploadUtil.getApplicationJsonContent(e));
final JSONObject json = (JSONObject) JSONParser.parseStrict(FileUploadUtil.getApplicationJsonContentFromHtml(e.getResults()));
if (json.get(ORCCertificateUploadConstants.CERTIFICATES) != null) {
sailingServiceWrite.getORCCertificates(e.getResults(), new AsyncCallback<Collection<ORCCertificate>>() {
sailingServiceWrite.getORCCertificates(json.toString(), new AsyncCallback<Collection<ORCCertificate>>() {
@Override
public void onFailure(Throwable caught) {
busyIndicator.setBusy(false);
@@ -23,10 +23,10 @@ import com.sap.sailing.gwt.ui.adminconsole.resulthandling.SensorDataImportResult
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
import com.sap.sailing.gwt.ui.client.StringMessages;
import com.sap.sailing.gwt.ui.shared.TrackFileImportDeviceIdentifierDTO;
import com.sap.sse.common.fileupload.FileUploadUtil;
import com.sap.sse.gwt.client.ErrorReporter;
import com.sap.sse.gwt.client.Notification;
import com.sap.sse.gwt.client.Notification.NotificationType;
import com.sap.sse.gwt.client.fileupload.FileUploadUtil;
public abstract class AbstractFileImportWidget extends Composite {
@@ -89,7 +89,7 @@ public abstract class AbstractFileImportWidget extends Composite {
@UiHandler("formPanelUi")
void onFileImportComplete(SubmitCompleteEvent event) {
SensorDataImportResponse importResponse = SensorDataImportResponse.parse(FileUploadUtil.getApplicationJsonContent(event));
SensorDataImportResponse importResponse = SensorDataImportResponse.parse(FileUploadUtil.getApplicationJsonContentFromHtml(event.getResults()));
if (importResponse == null) {
Notification.notify(StringMessages.INSTANCE.unexpectedErrorDuringFileImport(), NotificationType.ERROR);
} else {
@@ -33,11 +33,11 @@ import com.sap.sailing.gwt.ui.adminconsole.resulthandling.ExpeditionDataImportRe
import com.sap.sailing.gwt.ui.client.Displayer;
import com.sap.sailing.gwt.ui.client.StringMessages;
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
import com.sap.sse.common.fileupload.FileUploadUtil;
import com.sap.sse.gwt.client.Notification;
import com.sap.sse.gwt.client.Notification.NotificationType;
import com.sap.sse.gwt.client.controls.busyindicator.BusyIndicator;
import com.sap.sse.gwt.client.controls.busyindicator.SimpleBusyIndicator;
import com.sap.sse.gwt.client.fileupload.FileUploadUtil;
/**
* The UI form to upload data for expedition all in one import.
@@ -150,7 +150,7 @@ public class ExpeditionAllInOneImportPanel extends Composite {
formPanel.addSubmitCompleteHandler(event -> {
validation.run();
busyIndicator.setBusy(false);
final ExpeditionDataImportResponse response = ExpeditionDataImportResponse.parse(FileUploadUtil.getApplicationJsonContent(event));
final ExpeditionDataImportResponse response = ExpeditionDataImportResponse.parse(FileUploadUtil.getApplicationJsonContentFromHtml(event.getResults()));
if (response == null) {
Notification.notify(StringMessages.INSTANCE.unexpectedErrorDuringFileImport(), NotificationType.ERROR);
} else if (response.hasEventId()) {
@@ -69,13 +69,13 @@ import com.sap.sailing.gwt.ui.shared.WindInfoForRaceDTO;
import com.sap.sailing.gwt.ui.shared.WindTrackInfoDTO;
import com.sap.sse.common.Util;
import com.sap.sse.common.Util.Pair;
import com.sap.sse.common.fileupload.FileUploadUtil;
import com.sap.sse.gwt.adminconsole.AdminConsoleTableResources;
import com.sap.sse.gwt.adminconsole.FilterablePanelProvider;
import com.sap.sse.gwt.client.ErrorReporter;
import com.sap.sse.gwt.client.celltable.BaseCelltable;
import com.sap.sse.gwt.client.celltable.RefreshableMultiSelectionModel;
import com.sap.sse.gwt.client.dialog.DataEntryDialog.DialogCallback;
import com.sap.sse.gwt.client.fileupload.FileUploadUtil;
import com.sap.sse.gwt.client.panels.AbstractFilterablePanel;
import com.sap.sse.security.shared.dto.UserDTO;
import com.sap.sse.security.ui.client.UserService;
@@ -477,7 +477,7 @@ public class WindPanel extends FormPanel implements FilterablePanelProvider<Race
form.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() {
public void onSubmitComplete(SubmitCompleteEvent event) {
importResultPanel.clear();
String windImportResultJson = FileUploadUtil.getApplicationJsonContent(event);
String windImportResultJson = FileUploadUtil.getApplicationJsonContentFromHtml(event.getResults());
try {
WindImportResult windImportResult = WindImportResult.fromJson(windImportResultJson);
JsArray<RaceEntry> raceEntries = windImportResult.getRaceEntries();
@@ -41,12 +41,12 @@ import com.google.gwt.user.client.ui.VerticalPanel;
import com.sap.sailing.gwt.home.shared.SharedHomeResources;
import com.sap.sailing.gwt.ui.client.StringMessages;
import com.sap.sse.common.fileupload.FileUploadConstants;
import com.sap.sse.common.fileupload.FileUploadUtil;
import com.sap.sse.common.media.MediaTagConstants;
import com.sap.sse.common.media.MediaType;
import com.sap.sse.common.media.MimeType;
import com.sap.sse.gwt.client.Notification;
import com.sap.sse.gwt.client.Notification.NotificationType;
import com.sap.sse.gwt.client.fileupload.FileUploadUtil;
import com.sap.sse.gwt.client.media.ImageDTO;
import com.sap.sse.gwt.client.media.VideoDTO;
import com.sap.sse.gwt.client.panels.HorizontalFlowPanel;
@@ -288,7 +288,7 @@ public abstract class AbstractMediaUploadPopup extends DialogBox {
// we can get the result text here (see the FormPanel documentation for
// further explanation).
progressOverlay.setVisible(false);
JSONValue resultJsonValue = JSONParser.parseStrict(FileUploadUtil.getApplicationJsonContent(event));
JSONValue resultJsonValue = JSONParser.parseStrict(FileUploadUtil.getApplicationJsonContentFromHtml(event.getResults()));
JSONArray resultJson = resultJsonValue.isArray();
boolean uploadSuccessful = false;
boolean fileSkipped = false;
@@ -1,17 +1,59 @@
package com.sap.sailing.server.gateway;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
import org.json.simple.JSONAware;
import com.sap.sse.common.fileupload.FileUploadUtil;
/**
* Base servlet for json exports
* @author Frank
* Base servlet for JSON exports. If implementing subclasses use {@link #setJsonResponseHeader(HttpServletResponse)},
* they are assumed to write their response to the servlet response's {@link HttpServletResponse#getOutputStream()
* output stream} directly. Alternatively, e.g., when used as the target of a file upload form that technically expects
* HTML output, the output can be set to {@code text/html}, and a special encoding of a JSON response will be used so it
* can be embedded robustly in an HTML document's {@code body} tag and be extracted again by the client receiving the
* event about submission completion.
*
* @author Frank Mittag
* @author Axel Uhl
*/
@SuppressWarnings("serial")
public abstract class AbstractJsonHttpServlet extends SailingServerHttpServlet {
/**
* By invoking this method you declare that you will write the JSON document
* straight to the output stream.
*/
protected void setJsonResponseHeader(HttpServletResponse resp) {
setBasicPropertiesInResponseHeader(resp);
resp.setContentType("application/json");
}
/**
* By invoking this method you declare that you assume being the target of a form submission
* and will encode your JSON into an HTML document's {@code body} tag, using the
* {@link FileUploadUtil} class.
*/
protected void setJsonEncodedInHtmlResponseHeader(HttpServletResponse resp) {
setBasicPropertiesInResponseHeader(resp);
resp.setContentType("text/html");
}
private void setBasicPropertiesInResponseHeader(HttpServletResponse resp) {
// to allow access to the json document directly from a client side javascript
resp.setHeader("Access-Control-Allow-Origin", "*");
resp.setContentType("application/json");
resp.setCharacterEncoding("UTF-8");
}
/**
* Encodes the stringified {@code json} object into an HTML document's {@code body} element, writing the output into
* {@code resp}'s {@link HttpServletResponse#getWriter() writer}. The encoding is done using
* {@link FileUploadUtil#getHtmlWithEmbeddedJsonContent(String)} which the client can
* then also use to {@link FileUploadUtil#getEmbeddedJsonContentFromHtml(String, java.util.function.Function)
* extract} the pure JSON string from the HTML carrier document again.
*/
protected void writeJsonIntoHtmlResponse(HttpServletResponse resp, JSONAware json) throws IOException {
resp.getWriter().write(FileUploadUtil.getHtmlWithEmbeddedJsonContent(json.toJSONString()));
}
}
@@ -15,9 +15,14 @@ import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import com.sap.sailing.server.gateway.AbstractJsonHttpServlet;
import com.sap.sse.common.fileupload.FileUploadUtil;
/**
* Abstract servlet handling multipart-mime file upload coming from an upload form
* Abstract servlet handling multipart-mime file upload coming from an upload form. The response content type is set to
* "text/html" by default (see {@link #setJsonEncodedInHtmlResponseHeader(HttpServletResponse)}). If your response is a
* JSON document, encode it as an HTML document {@code body} using
* {@link FileUploadUtil#getHtmlWithEmbeddedJsonContent(String)}. A client can then use the submit complete event
* response and decode it using {@link FileUploadUtil#getApplicationJsonContentFromHtml(String)}.
*
* @author Fredrik Teschke
* @author Axel Uhl
@@ -56,7 +61,7 @@ public abstract class AbstractFileUploadServlet extends AbstractJsonHttpServlet
// Conversely, trying to use text/html as content encoding leads some browsers---especially on mobile devices---
// to do ugly things to the content returned, such as replacing digit sequences by a corresponding <a> element
// that allows the user to dial that number with the phone app...
setJsonResponseHeader(resp);
setJsonEncodedInHtmlResponseHeader(resp);
process(items, req, resp);
} catch (FileUploadException e) {
throw new IOException("Could not parse request");
@@ -105,7 +105,6 @@ public class FileUploadServlet extends AbstractFileUploadServlet {
}
resultList.add(result);
}
resultList.writeJSONString(resp.getWriter());
writeJsonIntoHtmlResponse(resp, resultList);
}
}
@@ -101,7 +101,6 @@ public class ORCCertificateImportServlet extends AbstractFileUploadServlet {
private void writeResponse(Iterable<ORCCertificate> certificates, HttpServletResponse resp) throws IOException {
// Use text/html to prevent browsers from wrapping the response body,
// see "Handling File Upload Responses in GWT" at http://www.artofsolving.com/node/50
resp.setContentType("text/html;charset=UTF-8");
final JSONObject jsonResponse = new JSONObject();
final ORCCertificateJsonSerializer certificateSerializer = new ORCCertificateJsonSerializer();
final JSONArray certificatesAsJson = new JSONArray();
@@ -110,7 +109,7 @@ public class ORCCertificateImportServlet extends AbstractFileUploadServlet {
}
jsonResponse.put(ORCCertificateUploadConstants.CERTIFICATES, certificatesAsJson);
jsonResponse.put(ORCCertificateUploadConstants.STATUS, "OK");
jsonResponse.writeJSONString(resp.getWriter());
writeJsonIntoHtmlResponse(resp, jsonResponse);
}
}
@@ -130,7 +130,7 @@ public class ExpeditionAllInOneImportServlet extends AbstractFileUploadServlet {
importerResult = new ImporterResult(t, Collections.emptyList());
logger.log(Level.SEVERE, t.getMessage());
} finally {
this.toJSON(importerResult).writeJSONString(resp.getWriter());
writeJsonIntoHtmlResponse(resp, toJSON(importerResult));
}
}
@@ -51,7 +51,7 @@ public class SensorDataImportServlet extends AbstractFileUploadServlet {
} catch (Exception e) {
importResult.add(e);
} finally {
ImportResultSerializer.serializeImportResult(importResult).writeJSONString(resp.getWriter());
writeJsonIntoHtmlResponse(resp, ImportResultSerializer.serializeImportResult(importResult));
}
}
}
@@ -62,7 +62,7 @@ public class TrackFilesImportServlet extends AbstractFileUploadServlet {
} catch (Exception e) {
importResult.add(e);
} finally {
ImportResultSerializer.serializeImportResult(importResult).writeJSONString(resp.getWriter());
writeJsonIntoHtmlResponse(resp, ImportResultSerializer.serializeImportResult(importResult));
}
}
}
@@ -33,6 +33,9 @@
both, mark and race, specify one. This way, redundant and excessive mark fixes can be avoided,
don't consume extra memory and don't waste replication bandwidth. See also
<a href="https://bugzilla.sapsailing.com/bugzilla/show_bug.cgi?id=5919">bug 5919</a>.</li>
<li>Fixed file upload for Chrome browsers after Chrome made an incompatible change, appending
a combination of <tt>&lt;div&gt;</tt> tags after the already <tt>&lt;pre&gt;</tt>-enclosed
form submission completion payload.</li>
</ul>
<h2 class="articleSubheadline">March 2024</h2>
<ul class="bulletList">
@@ -0,0 +1,72 @@
package com.sap.sse.common.fileupload;
import com.sap.sse.common.Base64Utils;
/**
* Helper class used in conjunction with {@code AbstractFileUploadServlet} and its sub-classes which assume to be
* servlets targeted by file upload forms, returning a JSON payload embedded in an HTML document's body. This class
* has static helper methods that allow the servlet to {@link #getHtmlWithEmbeddedJsonContent(String) embed/encode}
* and the client to {@link #getApplicationJsonContentFromHtml(String) extract/decode} the JSON payload
* embedded in the servlet response's HTML document.
* <p>
*
* For file uploads through {@link FormPanel} elements, if the response is a JSON message (content type
* {@code application/json}) then the way the {@link FormPanel} intercepts this response (namely through an auxiliary
* {@code iframe} element into which the response is loaded) the content may get wrapped by a combination of {@code <pre>}
* and {@code </pre>} elements. In newer Chrome versions as of around 2024-04-15, additional {@code <div>} elements may be found after
* the closing {@code </pre>} tag. These elements persist through the {@link SubmitCompleteEvent#getResults()} method,
* and hence must be stripped off before trying to parse the results as JSON. This is what
* {@link #getApplicationJsonContentFromHtml(String)} does.
* <p>
*
* The background is described also in bugs 5992 and bug 5127 (especially comment #44).
*
* @author Axel Uhl (d043530)
*
*/
public class FileUploadUtil {
private final static String EMBEDDING_TAG = "div";
// use an all lower-case attribute name because along the channel, HMTL content may be normalized
private final static String PAYLOAD_ATTRIBUTE_NAME = "jsonpayloadasbase64";
/**
* Decodes a JSON {@link String} from an HTML document's {@code body} element that has
* been produced from such a JSON string using the {@link #getHtmlWithEmbeddedJsonContent(String)}
* method.
*/
public static String getApplicationJsonContentFromHtml(final String resultHtml) {
final String base64EncodedJsonPayload = resultHtml.replaceFirst("^.*<"+EMBEDDING_TAG+" *"+PAYLOAD_ATTRIBUTE_NAME+"=\"([^\"]*)\"></"+EMBEDDING_TAG+">.*$", "$1");
return new String(Base64Utils.fromBase64(base64EncodedJsonPayload));
}
/**
* Embeds a JSON payload {@link String} in an HTML {@code body} element such that the resulting document is robust
* against browser normalization, such as case changes in element and attribute names, or document adjustments for
* display purposes. The JSON payload can be extracted from the resulting HTML string using the
* {@link #getApplicationJsonContentFromHtml(String)} method.
* <p>
*
* In particular, the following expression is always {@code true} for any non-{@code null} {@link String}
* {@code json}:
* <p>
*
* {@code json.equals(}{@link #getApplicationJsonContentFromHtml(String)
* getApplicationJsonContentFromHtml(}{@link #getHtmlWithEmbeddedJsonContent(String)
* getHtmlWithEmbeddedJsonContent(json)))}
* <p>
*
* Servlets using this method shall declare their response content type as "text/html" so that at most HTML
* normalization would take place en-route.
*
* @param json
* a non-{@code null} {@link String} that will be encoded safely into an HTML document body's contents so
* that it survives normalization and potentially enclosing into other tags and the pre-pending and
* appending of other tags to the content.
* @return an HTML string whose top-level element is a {@code body} element containing the safely-encoded payload
* which can be decoded again using the {@link #getApplicationJsonContentFromHtml(String)} method.
*/
public static String getHtmlWithEmbeddedJsonContent(final String json) {
return "<body><"+EMBEDDING_TAG+" "+PAYLOAD_ATTRIBUTE_NAME+"=\""+Base64Utils.toBase64(json.getBytes())+"\"></"+EMBEDDING_TAG+"></body>";
}
}
@@ -38,9 +38,9 @@ import com.google.gwt.user.client.ui.SubmitButton;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.sap.sse.common.fileupload.FileUploadConstants;
import com.sap.sse.common.fileupload.FileUploadUtil;
import com.sap.sse.gwt.client.Notification;
import com.sap.sse.gwt.client.Notification.NotificationType;
import com.sap.sse.gwt.client.fileupload.FileUploadUtil;
/**
* A {@link TextBox} together with an upload button that can use the file storage service to
@@ -175,7 +175,7 @@ public class URLFieldWithFileUpload extends Composite implements HasValue<Map<St
}
selectUploadButton.removeStyleName(RESOURCES.urlFieldWithFileUploadStyle().loadingClass());
endUploadEvent.endUpload();
JSONArray resultJson = JSONParser.parseStrict(FileUploadUtil.getApplicationJsonContent(event)).isArray();
JSONArray resultJson = JSONParser.parseStrict(FileUploadUtil.getApplicationJsonContentFromHtml(event.getResults())).isArray();
if (resultJson != null) {
Map<String, String> uris = new HashMap<>(resultJson.size());
List<String> titleStrings = new ArrayList<>(resultJson.size());
@@ -1,22 +0,0 @@
package com.sap.sse.gwt.client.fileupload;
import com.google.gwt.user.client.ui.FormPanel;
import com.google.gwt.user.client.ui.FormPanel.SubmitCompleteEvent;
public class FileUploadUtil {
/**
* For file uploads through {@link FormPanel} elements, if the response is a JSON message (content type
* {@code application/json}) then the way the {@link FormPanel} intercepts this response (namely through
* an auxiliary {@code iframe} element into which the response is loaded) the content may get wrapped by
* a combination of {@code <pre>} and {@code </pre>} elements. These elements persist through the
* {@link SubmitCompleteEvent#getResults()} method, and hence must be stripped off before trying to
* parse the results as JSON. This is that this method does.<p>
*
* Conversely, trying to use {@code text/html} as content encoding leads some
* browsers---especially on mobile devices---to do ugly things to the content returned, such as replacing digit
* sequences by a corresponding {@code <a>} element that allows the user to dial that number with the phone app...
*/
public static String getApplicationJsonContent(SubmitCompleteEvent submitResultWithApplicationJsonContent) {
return submitResultWithApplicationJsonContent.getResults().replaceFirst("<pre[^>]*>(.*)</pre>", "$1");
}
}
@@ -8,34 +8,5 @@
<version>1.0.0-SNAPSHOT</version>
</parent>
<artifactId>com.sap.sse.landscape.aws.test</artifactId>
<packaging>eclipse-plugin</packaging>
<!-- Enable the following if there is a valid AWS SDK key available in the test execution environment:
<packaging>eclipse-test-plugin</packaging>
-->
<properties>
<tycho.plugin-test.skip>true</tycho.plugin-test.skip>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId>
<version>${tycho-version}</version>
<configuration>
<excludes>
<test>**/*</test>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</project>
@@ -24,6 +24,7 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
import com.jcraft.jsch.ChannelSftp;
@@ -87,6 +88,7 @@ import software.amazon.awssdk.services.sts.model.Credentials;
* @author Axel Uhl (D043530)
*
*/
@Ignore("Needs AWS key ID, key secret and session token in system properties")
public class ConnectivityTest<ProcessT extends AwsApplicationProcess<String, SailingAnalyticsMetrics, ProcessT>> {
private static final Logger logger = Logger.getLogger(ConnectivityTest.class.getName());
private static final Optional<Duration> optionalTimeout = Optional.of(Duration.ONE_MINUTE.times(10));
@@ -13,6 +13,7 @@ import java.util.Random;
import org.bson.Document;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.mockito.Mockito;
@@ -26,6 +27,7 @@ import com.sap.sse.landscape.mongodb.impl.MongoProcessImpl;
import com.sap.sse.landscape.mongodb.impl.MongoProcessInReplicaSetImpl;
import com.sap.sse.landscape.mongodb.impl.MongoReplicaSetImpl;
@Ignore("Needs a specific MongoDB replica set named 'rs0' in the environment")
public class MongoTests {
private static final Optional<Duration> optionalTimeout = Optional.of(Duration.ONE_MINUTE.times(5));
@@ -25,7 +25,7 @@ import com.sap.sse.landscape.mongodb.MongoProcessInReplicaSet;
import com.sap.sse.landscape.mongodb.MongoReplicaSet;
public class MongoUriParserTest {
private static final String WWW_EXAMPLE_COM = "www.example.com";
private static final String WWW_EXAMPLE_COM = "127.0.0.2";
private MongoUriParser<String> parser;
@SuppressWarnings("unchecked")
@@ -36,7 +36,7 @@ public class MongoUriParserTest {
final AwsInstance<String> host1 = mock(AwsInstance.class);
when(host1.getPublicAddress()).thenReturn(wwwExampleCom);
when(host1.getPrivateAddress()).thenReturn(wwwExampleCom);
when(landscape.getHostByPublicIpAddress(ArgumentMatchers.any(Region.class), ArgumentMatchers.contains(wwwExampleCom.getHostAddress()), ArgumentMatchers.any(HostSupplier.class))).thenReturn(host1);
when(landscape.getHostByPrivateIpAddress(ArgumentMatchers.any(Region.class), ArgumentMatchers.contains(wwwExampleCom.getHostAddress()), ArgumentMatchers.any(HostSupplier.class))).thenReturn(host1);
final InetAddress loopback = InetAddress.getLoopbackAddress();
final AwsInstance<String> host2 = mock(AwsInstance.class);
when(host2.getPrivateAddress()).thenReturn(loopback);
@@ -46,25 +46,25 @@ public class MongoUriParserTest {
@Test
public void testSimpleSingleNodeUri() throws URISyntaxException, UnknownHostException {
final String hostname = WWW_EXAMPLE_COM;
final String hostname = "127.0.0.1";
final String dbName = "myDb";
final Database database = parser.parseMongoUri("mongodb://"+hostname+"/"+dbName);
assertFalse(database.getEndpoint().isReplicaSet());
final MongoProcess mongoProcess = database.getEndpoint().asMongoProcess();
assertEquals(InetAddress.getByName(WWW_EXAMPLE_COM).getHostAddress(), mongoProcess.getHostname());
assertEquals(hostname, mongoProcess.getHostname());
assertEquals(27017, mongoProcess.getPort());
assertEquals(dbName, database.getName());
}
@Test
public void testSimpleSingleNodeUriWithExplicitPort() throws URISyntaxException, UnknownHostException {
final String hostname = WWW_EXAMPLE_COM;
final String hostname = "127.0.0.1";
final int port = 10202;
final String dbName = "myDb";
final Database database = parser.parseMongoUri("mongodb://"+hostname+":"+port+"/"+dbName);
assertFalse(database.getEndpoint().isReplicaSet());
final MongoProcess mongoProcess = database.getEndpoint().asMongoProcess();
assertEquals(InetAddress.getByName(WWW_EXAMPLE_COM).getHostAddress(), mongoProcess.getHostname());
assertEquals(InetAddress.getByName(hostname).getHostAddress(), mongoProcess.getHostname());
assertEquals(port, mongoProcess.getPort());
assertEquals(dbName, database.getName());
}
@@ -0,0 +1,25 @@
package com.sap.sse.landscape.aws.impl;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
import com.sap.sse.landscape.application.ApplicationProcess;
import com.sap.sse.landscape.application.ApplicationProcessMetrics;
import com.sap.sse.landscape.aws.ReverseProxy;
public class ReverseProxyTargetGroupHealthCheckPathTest {
private final static String TARGET_GROUP_ARN = "arn:aws:elasticloadbalancing:eu-west-1:017363970217:targetgroup/S-BYC-m/141f1fbae1ac783f";
@Test
public void testHealthCheckPath() {
final String healthCheckPath = String.format(AbstractApacheReverseProxy.TARGET_GROUP_STATUS, TARGET_GROUP_ARN);
assertTrue(healthCheckPath.endsWith("?arn="+TARGET_GROUP_ARN));
}
@Test
public <ApplicationProcessT extends ApplicationProcess<String, ApplicationProcessMetrics, ApplicationProcessT>> void testHealthCheckPathOnReverseProxy() {
final ReverseProxy<?, ?, ?, ?> reverseProxy = new ApacheReverseProxy<String, ApplicationProcessMetrics, ApplicationProcessT>(null, null);
assertTrue(reverseProxy.getTargetGroupHealthCheckPath(TARGET_GROUP_ARN).endsWith("?arn="+TARGET_GROUP_ARN));
}
}
@@ -110,5 +110,18 @@ public interface ReverseProxy<ShardingKey, MetricsT extends ApplicationProcessMe
*/
void terminate();
/**
* Gets the basic path that will indicate the health of a reverse proxy.
*/
String getHealthCheckPath();
/**
* Gets the health check path that should be used by a target group, containing only reverse proxies.
*
* @param targetGroupArn
* identifies the target group expected to run the health check; this can be used to construct a URL path
* and health check that is aware of this target group and may, e.g., take into account the set of its
* member instances and their availability zones.
*/
String getTargetGroupHealthCheckPath(String targetGroupArn);
}
@@ -12,7 +12,8 @@ implements ReverseProxy<ShardingKey, MetricsT, ProcessT, RotatingFileBasedLog> {
/**
* The path the target group will ping to check the health of the reverse proxy.
*/
protected static final String INTERNAL_SERVER_STATUS = "cgi-bin/reverseProxyHealthcheck.sh";
protected static final String INTERNAL_SERVER_STATUS = "internal-server-status";
protected static final String TARGET_GROUP_STATUS = "cgi-bin/reverseProxyHealthcheck.sh?arn=%s";
private final AwsLandscape<ShardingKey> landscape;
public AbstractApacheReverseProxy(AwsLandscape<ShardingKey> landscape) {
@@ -25,6 +26,11 @@ implements ReverseProxy<ShardingKey, MetricsT, ProcessT, RotatingFileBasedLog> {
@Override
public String getHealthCheckPath() {
return "/"+INTERNAL_SERVER_STATUS;
return "/" + INTERNAL_SERVER_STATUS;
}
@Override
public String getTargetGroupHealthCheckPath(String targetGroupArn) {
return "/" + String.format(TARGET_GROUP_STATUS, targetGroupArn);
}
}
@@ -155,6 +155,7 @@ import software.amazon.awssdk.services.elasticloadbalancingv2.model.LoadBalancer
import software.amazon.awssdk.services.elasticloadbalancingv2.model.LoadBalancerState;
import software.amazon.awssdk.services.elasticloadbalancingv2.model.ModifyRuleResponse;
import software.amazon.awssdk.services.elasticloadbalancingv2.model.ModifyTargetGroupAttributesRequest;
import software.amazon.awssdk.services.elasticloadbalancingv2.model.ModifyTargetGroupRequest;
import software.amazon.awssdk.services.elasticloadbalancingv2.model.ProtocolEnum;
import software.amazon.awssdk.services.elasticloadbalancingv2.model.RedirectActionStatusCodeEnum;
import software.amazon.awssdk.services.elasticloadbalancingv2.model.Rule;
@@ -405,6 +406,7 @@ public class AwsLandscapeImpl<ShardingKey> implements AwsLandscape<ShardingKey>
tagKeyandValue.put(LandscapeConstants.ALL_REVERSE_PROXIES, "");
final TargetGroup<ShardingKey> defaultTargetGroup = createTargetGroup(alb.getRegion(), DEFAULT_TARGET_GROUP_PREFIX + alb.getName() + "-" + ProtocolEnum.HTTP.name(),
httpPort, reverseProxy.getHealthCheckPath(), /* healthCheckPort */ httpPort, alb.getArn(), alb.getVpcId(), tagKeyandValue);
setTargetGroupHealthCheckPath(defaultTargetGroup, reverseProxy.getTargetGroupHealthCheckPath(defaultTargetGroup.getTargetGroupArn()));
defaultTargetGroup.addTargets(reverseProxy.getHosts());
final String defaultCertificateArn = defaultCertificateArnFuture.get();
return getLoadBalancingClient(getRegion(alb.getRegion()))
@@ -1225,7 +1227,17 @@ public class AwsLandscapeImpl<ShardingKey> implements AwsLandscape<ShardingKey>
}
});
}
/**
* Adjusts the health check path of an existing target group. Note that this will make the {@link TargetGroup} object passed as
* the {@code targetGroup} parameter inconsistent in its {@link TargetGroup#getHealthCheckPath()} field which does not reflect the
* new value set here.
*/
private void setTargetGroupHealthCheckPath(TargetGroup<ShardingKey> targetGroup, String path) {
getLoadBalancingClient(getRegion(targetGroup.getRegion())).modifyTargetGroup(ModifyTargetGroupRequest.builder()
.targetGroupArn(targetGroup.getTargetGroupArn()).healthCheckPath(path).build());
}
@Override
public void addTargetsToTargetGroup(
TargetGroup<ShardingKey> targetGroup,
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: TracTrac Client module
Bundle-SymbolicName: com.tractrac.clientmodule
Bundle-Version: 3.15.3
Bundle-Version: 3.15.6
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Bundle-ClassPath: .,
lib/TracAPI.jar
+56
View File
@@ -15,6 +15,62 @@ It contains also some files:
- test.sh -> script that compiles the code in the src folder, creates the test.jar library and execute the code of the example.
- Manifest.txt -> manifest used to create the test.jar file
********************************************
TracAPI 3.15.6
********************************************
This is a final version. It keeps the backward compatibility.
Release date: 17/04/2024
1) Bugs
- There are some threads that are not killed when the connection is closed. These threads were added to collect
statistics but this feature make not sense in TracAPI. (Reported by Axel Uhl, 17/04/2024)
********************************************
TracAPI 3.15.5
********************************************
This is a final version. It keeps the backward compatibility.
Release date: 17/04/2024
1) Bugs
- Deadlock when a connection was closed by the server and the client called the IRaceSubscriber.stop method. (Reported by
Axel Uhl, 16/04/2024)
********************************************
TracAPI 3.15.4
********************************************
This is a final version. It keeps the backward compatibility.
Release date: 16/04/2024
1) Features
- Formatting the code using blank spaces (instead of tabs). The workspace was already configured like this,
but the old files kept some tabs. All the code has been formatted again. (Requested by Axel Uhl, 19/02/2024)
2) Bugs
- When the IRaceSubscriber.stop method is called, the library doesn't close the connection. (Reported by Axel Uhl, 03/04/2024)
- Improving the detection of a dead connection. (Reported by Axel Uhl, 03/04/2024)
********************************************
TracAPI 3.15.3
********************************************
This is a final version. It keeps the backward compatibility.
Release date: 11/03/2024
1) Feature
- Adding the method IPosition.getRTKStatus used to get the RTK status (Requested by Chris Terkelsen, 07/03/2024)
2) Bugs
- Some socket connections were not closed correctly (Reported by Jorge Piera, 08/03/2024)
********************************************
TracAPI 3.15.2
********************************************
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>All Classes (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>All Classes (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>All Classes (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>All Classes (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IIdentifiable (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IIdentifiable (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IIdentifiable (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IIdentifiable (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>INamed (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>INamed (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="INamed (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="INamed (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -113,7 +113,7 @@ var activeTableTab = "activeTableTab";
<pre>public interface <span class="typeNameLabel">INamed</span>
extends <a href="../../../../../com/tractrac/model/lib/api/IIdentifiable.html" title="interface in com.tractrac.model.lib.api">IIdentifiable</a></pre>
<div class="block">Defines a method to get the name of an entity.
<p>
It is assumed that a named entity also has an Id, hence it extends
<a href="../../../../../com/tractrac/model/lib/api/IIdentifiable.html" title="interface in com.tractrac.model.lib.api"><code>IIdentifiable</code></a></div>
<dl>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ModelLocator (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>ModelLocator (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ModelLocator (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="ModelLocator (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -134,10 +134,10 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
<dd><a href="mailto:jorge@tractrac.dk">Jorge Piera Llodr&aacute;</a></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a
href="http://en.wikipedia.org/wiki/Service_locator_pattern">Locator</a>,
href="http://en.wikipedia.org/wiki/Service_locator_pattern">Locator</a>,
<a
href="http://docs.oracle.com/javase/7/docs/api/java/util/ServiceLoader.html">Service
Loader</a></dd>
href="http://docs.oracle.com/javase/7/docs/api/java/util/ServiceLoader.html">Service
Loader</a></dd>
</dl>
</li>
</ul>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AbstractAttachable (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>AbstractAttachable (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AbstractAttachable (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="AbstractAttachable (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IAttachable (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IAttachable (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IAttachable (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IAttachable (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IAttachmentKey (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IAttachmentKey (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IAttachmentKey (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IAttachmentKey (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IAttachmentManager (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IAttachmentManager (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IAttachmentManager (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IAttachmentManager (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -179,7 +179,7 @@ extends com.tractrac.common.lib.api.service.IServiceProvider</pre>
<dd><code>description</code> - a description for the attachment</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a key that is used to attach an object to the <a href="../../../../../../com/tractrac/model/lib/api/attachment/IAttachable.html" title="interface in com.tractrac.model.lib.api.attachment"><code>IAttachable</code></a>
class.</dd>
class.</dd>
</dl>
</li>
</ul>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.attachment.AbstractAttachable (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.attachment.AbstractAttachable (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.attachment.AbstractAttachable (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.attachment.AbstractAttachable (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.attachment.IAttachable (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.attachment.IAttachable (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.attachment.IAttachable (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.attachment.IAttachable (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentKey (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentKey (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentKey (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentKey (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentManager (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentManager (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentManager (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.attachment.IAttachmentManager (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>com.tractrac.model.lib.api.attachment Class Hierarchy (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>com.tractrac.model.lib.api.attachment Class Hierarchy (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="com.tractrac.model.lib.api.attachment Class Hierarchy (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="com.tractrac.model.lib.api.attachment Class Hierarchy (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Package com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Package com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Package com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Package com.tractrac.model.lib.api.attachment (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.IIdentifiable (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.IIdentifiable (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.IIdentifiable (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.IIdentifiable (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.INamed (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.INamed (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.INamed (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.INamed (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.ModelLocator (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.ModelLocator (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.ModelLocator (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.ModelLocator (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IControlPassing (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IControlPassing (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IControlPassing (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IControlPassing (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IControlPassings (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IControlPassings (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IControlPassings (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IControlPassings (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IMessageData (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IMessageData (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IMessageData (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IMessageData (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IPosition (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IPosition (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IPosition (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IPosition (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -119,7 +119,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/spatial/IGeoCoordi
<p>
The position is in the WGS84 coordinate frame.
</p>
<p>
TODO: Should it instead return an ICoordinate? That would make it possible to
work in geographical coordinates as well as projected coordinates directly,
not having to store both.</div>
@@ -293,7 +293,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/spatial/IGeoCoordi
<h4>getDirection</h4>
<pre>double&nbsp;getDirection()</pre>
<div class="block">Returns the direction of the carrier at the time of the position.
<p>
The direction is the 360 degree compass heading, i.e. 0 when the carrier is
travelling directly north and 90 when the carrier is travelling directly
east.</div>
@@ -328,7 +328,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/spatial/IGeoCoordi
<div class="block">Gets the status of the RTK connection.
Each bit means:
<lu>
<li>bit 0</li>
<li>bit 0</li>
<ul>
<li>0: correction server not connected</li>
<li>1: correction server connected</li>
@@ -434,7 +434,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/spatial/IGeoCoordi
<pre>boolean&nbsp;isGPSTiming()</pre>
<div class="block">Returns if the time stamp has been retrieved from a GPS device. If not,
the GPS time is an estimation.
<p>
e.g: the static positions use the event start time and the positions from
the parameters file use the tracking start time. These two types of positions
use a time stamp that has not been retrieved from a GPS device.</div>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IPositionFactory (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IPositionFactory (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IPositionFactory (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IPositionFactory (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -117,7 +117,7 @@ extends com.tractrac.common.lib.api.service.IServiceProvider</pre>
<dd><a href="mailto:jorge@tractrac.dk">Jorge Piera Llodr&aacute;</a></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a
href="http://en.wikipedia.org/wiki/Factory_method_pattern">Factory</a></dd>
href="http://en.wikipedia.org/wiki/Factory_method_pattern">Factory</a></dd>
</dl>
</li>
</ul>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IPositionOffset (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IPositionOffset (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IPositionOffset (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IPositionOffset (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IPositionSnapped (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IPositionSnapped (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IPositionSnapped (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IPositionSnapped (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IStartStopData (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IStartStopData (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IStartStopData (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IStartStopData (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ITimeData (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>ITimeData (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ITimeData (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="ITimeData (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IControlPassing (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IControlPassing (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IControlPassing (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IControlPassing (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IControlPassings (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IControlPassings (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IControlPassings (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IControlPassings (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IMessageData (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IMessageData (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IMessageData (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IMessageData (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPosition (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPosition (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPosition (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPosition (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPositionFactory (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPositionFactory (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPositionFactory (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPositionFactory (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPositionOffset (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPositionOffset (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPositionOffset (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPositionOffset (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPositionSnapped (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IPositionSnapped (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPositionSnapped (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IPositionSnapped (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.IStartStopData (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.IStartStopData (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IStartStopData (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.IStartStopData (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.data.ITimeData (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.data.ITimeData (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.ITimeData (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.data.ITimeData (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -167,7 +167,7 @@
<td class="colFirst"><code>interface&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../com/tractrac/model/lib/api/sensor/ISensorData.html" title="interface in com.tractrac.model.lib.api.sensor">ISensorData</a></span></code>
<div class="block">
This interface implements sensor data.</div>
This interface implements sensor data.</div>
</td>
</tr>
</tbody>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>com.tractrac.model.lib.api.data Class Hierarchy (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>com.tractrac.model.lib.api.data Class Hierarchy (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="com.tractrac.model.lib.api.data Class Hierarchy (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="com.tractrac.model.lib.api.data Class Hierarchy (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Package com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Package com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Package com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Package com.tractrac.model.lib.api.data (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>CreateModelException (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>CreateModelException (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="CreateModelException (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="CreateModelException (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DataSource (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>DataSource (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DataSource (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="DataSource (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>EventType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>EventType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="EventType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="EventType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ICompetitor (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>ICompetitor (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ICompetitor (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="ICompetitor (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -417,7 +417,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Competitor Class associated with this Competitor, can * * * *
be <code>null</code>.</dd>
be <code>null</code>.</dd>
</dl>
</li>
</ul>
@@ -432,7 +432,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Competitor Class associated with this Competitor, can * * * *
be <code>null</code>.</dd>
be <code>null</code>.</dd>
</dl>
</li>
</ul>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ICompetitorClass (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>ICompetitorClass (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ICompetitorClass (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="ICompetitorClass (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IEvent (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IEvent (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IEvent (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IEvent (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IEventFactory (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IEventFactory (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IEventFactory (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IEventFactory (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -117,7 +117,7 @@ extends com.tractrac.common.lib.api.service.IServiceProvider</pre>
<dd><a href="mailto:jorge@tractrac.dk">Jorge Piera Llodr&aacute;</a></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a
href="http://en.wikipedia.org/wiki/Factory_method_pattern">Factory</a></dd>
href="http://en.wikipedia.org/wiki/Factory_method_pattern">Factory</a></dd>
</dl>
</li>
</ul>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IRace (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IRace (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IRace (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IRace (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -111,7 +111,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<div class="block"><p>
Encapsulates data related to a specific Race of a TracTrac Event.
</p>
<p>
A race has a unique id and a name. Furthermore it has a number of Race
Competitors, one for each Competitor in the race, that is used to wrap
@@ -277,14 +277,14 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../com/tractrac/model/lib/api/event/IRace.html#getStatusLastChangedTime--">getStatusLastChangedTime</a></span>()</code>
<div class="block">
Gets the time stamp when the race status returned by <code>{this.getStatus}</code> was updated</div>
Gets the time stamp when the race status returned by <code>{this.getStatus}</code> was updated</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../com/tractrac/model/lib/api/event/IRace.html#getStatusTime--">getStatusTime</a></span>()</code>
<div class="block">
The value returned in <code>{this.getStatus}</code> is applicable from this timestamp.</div>
The value returned in <code>{this.getStatus}</code> is applicable from this timestamp.</div>
</td>
</tr>
<tr id="i22" class="altColor">
@@ -315,24 +315,6 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
Hidden: the race is not visible
Offline: the race is visible but it is not accessible
Online: the race is visible and accessible
If we also consider the race tracking time, the race can be:
Replay: the race was celebrated in the past
Live: the race is in an online status ath this moment
Coming up: the race will be celebrated in the future
Combining these two dimensions, the possible values for the <a href="../../../../../../com/tractrac/model/lib/api/event/RaceVisibilityType.html" title="enum in com.tractrac.model.lib.api.event"><code>RaceVisibilityType</code></a>
enum are:
Hidden: if the race has the HIDDEN value in the event manager
Offline: if the race has the OFFLINE value in the event manager
Replay: if the race has the ONLINE value in the event manager and it is over
Live: if the race has the ONLINE value in the event manager and it is online
Coming up: if the race has the ONLINE value in the event manager and it is coming up
</div>
</td>
</tr>
@@ -495,7 +477,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
Start time of race. Either the time where all competitors start, or where
the first competitor start.
</p>
<p>
If this value is <code>0L</code> means that this value has not been
established.
@@ -516,7 +498,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<div class="block"><p>
End time of race. Time when all competitors has finished competing.
</p>
<p>
If this value is <code>0L</code> means that this value has not been
established.
@@ -536,12 +518,12 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<pre>long&nbsp;getTrackingStartTime()</pre>
<div class="block">Start of tracking time can be set before start of race time in case it is
interesting to follow what happens up til the start time of the race.
<p>
It will either equal the start time of the race, or be shortly before the
start time of the race.
</p>
<p>
If this value is <code>0L</code> means that the race has not been
initialized: the positions that arrive to the server won't be attached to
@@ -660,12 +642,12 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<h4>getStatusTime</h4>
<pre>long&nbsp;getStatusTime()</pre>
<div class="block"><p>
The value returned in <code>{this.getStatus}</code> is applicable from this timestamp.
The value returned in <code>{this.getStatus}</code> is applicable from this timestamp.
</p>
<p>
If this value is <code>0L</code> means that this value has not been
established.
If this value is <code>0L</code> means that this value has not been
established.
</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
@@ -681,11 +663,11 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<h4>getStatusLastChangedTime</h4>
<pre>long&nbsp;getStatusLastChangedTime()</pre>
<div class="block"><p>
Gets the time stamp when the race status returned by <code>{this.getStatus}</code> was updated
Gets the time stamp when the race status returned by <code>{this.getStatus}</code> was updated
</p>
<p>
The value is assigned when the race is created and it can't be null (<code>0L</code>).
The value is assigned when the race is created and it can't be null (<code>0L</code>).
</p></div>
</li>
</ul>
@@ -702,14 +684,14 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/INamed.html" title
<li>Offline: the race is visible but it is not accessible</li>
<li>Online: the race is visible and accessible</li>
</ul>
<p>
If we also consider the race tracking time, the race can be:
<ul>
<li>Replay: the race was celebrated in the past</li>
<li>Live: the race is in an online status ath this moment</li>
<li>Coming up: the race will be celebrated in the future</li>
</ul>
<p>
Combining these two dimensions, the possible values for the <a href="../../../../../../com/tractrac/model/lib/api/event/RaceVisibilityType.html" title="enum in com.tractrac.model.lib.api.event"><code>RaceVisibilityType</code></a>
enum are:
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IRaceCompetitor (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IRaceCompetitor (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IRaceCompetitor (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IRaceCompetitor (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -183,7 +183,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/metadata/IMetadata
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../com/tractrac/model/lib/api/event/IRaceCompetitor.html#getStatusLastChangedTime--">getStatusLastChangedTime</a></span>()</code>
<div class="block">
Gets the time stamp when the race competitor status returned by <code>{this.getStatus}</code> was updated</div>
Gets the time stamp when the race competitor status returned by <code>{this.getStatus}</code> was updated</div>
</td>
</tr>
<tr id="i8" class="altColor">
@@ -255,7 +255,7 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/metadata/IMetadata
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the route that this competitor is assigned to, can * * * * * * * *
be <code>null</code>.</dd>
be <code>null</code>.</dd>
</dl>
</li>
</ul>
@@ -340,11 +340,11 @@ extends <a href="../../../../../../com/tractrac/model/lib/api/metadata/IMetadata
<h4>getStatusLastChangedTime</h4>
<pre>long&nbsp;getStatusLastChangedTime()</pre>
<div class="block"><p>
Gets the time stamp when the race competitor status returned by <code>{this.getStatus}</code> was updated
Gets the time stamp when the race competitor status returned by <code>{this.getStatus}</code> was updated
</p>
<p>
The value is assigned when the race competitor is created and it can't be null (<code>0L</code>)
The value is assigned when the race competitor is created and it can't be null (<code>0L</code>)
</p></div>
</li>
</ul>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IRaceSerie (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>IRaceSerie (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IRaceSerie (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="IRaceSerie (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ITeam (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>ITeam (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ITeam (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="ITeam (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:58 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RaceLoadingException (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>RaceLoadingException (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="RaceLoadingException (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="RaceLoadingException (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RaceStatusType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>RaceStatusType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="RaceStatusType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="RaceStatusType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RaceVisibilityType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>RaceVisibilityType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="RaceVisibilityType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="RaceVisibilityType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>StartTimeType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>StartTimeType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="StartTimeType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="StartTimeType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.CreateModelException (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.CreateModelException (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.CreateModelException (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.CreateModelException (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.DataSource (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.DataSource (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.DataSource (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.DataSource (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.EventType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.EventType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.EventType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.EventType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.ICompetitor (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.ICompetitor (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.ICompetitor (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.ICompetitor (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.ICompetitorClass (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.ICompetitorClass (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.ICompetitorClass (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.ICompetitorClass (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.IEvent (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.IEvent (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IEvent (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IEvent (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.IEventFactory (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.IEventFactory (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IEventFactory (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IEventFactory (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.IRace (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.IRace (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IRace (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IRace (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.IRaceCompetitor (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.IRaceCompetitor (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IRaceCompetitor (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IRaceCompetitor (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.IRaceSerie (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.IRaceSerie (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IRaceSerie (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.IRaceSerie (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Interface com.tractrac.model.lib.api.event.ITeam (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Interface com.tractrac.model.lib.api.event.ITeam (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.ITeam (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Interface com.tractrac.model.lib.api.event.ITeam (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceCompetitorStatusType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceLoadingException (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceLoadingException (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceLoadingException (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceLoadingException (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceStatusType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceStatusType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceStatusType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceStatusType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceVisibilityType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.RaceVisibilityType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceVisibilityType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.RaceVisibilityType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {
@@ -122,24 +122,6 @@
Hidden: the race is not visible
Offline: the race is visible but it is not accessible
Online: the race is visible and accessible
If we also consider the race tracking time, the race can be:
Replay: the race was celebrated in the past
Live: the race is in an online status ath this moment
Coming up: the race will be celebrated in the future
Combining these two dimensions, the possible values for the <a href="../../../../../../../com/tractrac/model/lib/api/event/RaceVisibilityType.html" title="enum in com.tractrac.model.lib.api.event"><code>RaceVisibilityType</code></a>
enum are:
Hidden: if the race has the HIDDEN value in the event manager
Offline: if the race has the OFFLINE value in the event manager
Replay: if the race has the ONLINE value in the event manager and it is over
Live: if the race has the ONLINE value in the event manager and it is online
Coming up: if the race has the ONLINE value in the event manager and it is coming up
</div>
</td>
</tr>
@@ -2,10 +2,10 @@
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_392) on Tue Mar 12 06:39:58 UTC 2024 -->
<!-- Generated by javadoc (1.8.0_402) on Wed Apr 17 14:10:59 UTC 2024 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class com.tractrac.model.lib.api.event.StartTimeType (Subscription - Applications - TracAPI 3.15.3 API)</title>
<meta name="date" content="2024-03-12">
<title>Uses of Class com.tractrac.model.lib.api.event.StartTimeType (Subscription - Applications - TracAPI 3.15.6 API)</title>
<meta name="date" content="2024-04-17">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
@@ -13,7 +13,7 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.StartTimeType (Subscription - Applications - TracAPI 3.15.3 API)";
parent.document.title="Uses of Class com.tractrac.model.lib.api.event.StartTimeType (Subscription - Applications - TracAPI 3.15.6 API)";
}
}
catch(err) {

Some files were not shown because too many files have changed in this diff Show More