Initial commit from SVN.
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
/*
|
||||
* Copyright (c) 2003,2009 Declarative Engineering LLC.
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Declarative Engineering LLC
|
||||
* verson 1 which accompanies this distribution, and is available at
|
||||
* http://declarativeengineering.com/legal/DE_Developer_License_v1.txt
|
||||
*/
|
||||
package com.foundation.tcv.controller;
|
||||
|
||||
import com.common.util.*;
|
||||
|
||||
public interface IThinServerController {
|
||||
public static final String BOUND_NAME = "ThinServerController";
|
||||
|
||||
//Identifiers used to send session data back to the client after registering.//
|
||||
public static final String SESSION_DATA_CLIENT_NUMBER = "clientNumber";
|
||||
/** The license which is used by the client to validate that the server is authentic (not spoofing the application). */
|
||||
public static final String SESSION_DATA_LICENSE = "license";
|
||||
/** Not currently used. This may never be used. */
|
||||
public static final String SESSION_DATA_CACHE_ALGORITHM = "cacheAlgorithm";
|
||||
/** The version string identifying the version of the application browser to be used for this application. */
|
||||
public static final String SESSION_DATA_REQUIRED_APPLICATION_BROWSER_VERSION = "requiredApplicationBrowserVersion";
|
||||
/** The version string identifying the version of the application to be used. This refers to the application's installer versus the application browser's installer. */
|
||||
public static final String SESSION_DATA_REQUIRED_APPLICATION_VERSION = "requiredApplicationVersion";
|
||||
/** The data will be a list of String instances convertable to Address instances which can be used to download updates for the application. */
|
||||
public static final String SESSION_DATA_DOWNLOAD_SERVERS = "downloadServers";
|
||||
/** The data will be a list of String instances convertable to Address instances which can be used to run the application. */
|
||||
public static final String SESSION_DATA_APPLICATION_SERVERS = "applicationServers";
|
||||
/** Not currently used. */
|
||||
public static final String SESSION_DATA_REDIRECT_ADDRESSES = "redirectAddresses";
|
||||
/** Used to tell the client that it should connect to the given address (as a string) (in the same server farm) to start the application. */
|
||||
public static final String SESSION_DATA_FORWARD_ADDRESS = "forwardAddress";
|
||||
/** Provides the client with a session object reference. */
|
||||
public static final String SESSION_DATA_SERVER_SESSION_CONTROLLER = "serverSessionController";
|
||||
/** The version string identifying the future version of the application browser to be used for this application. */
|
||||
public static final String SESSION_DATA_FUTURE_APPLICATION_BROWSER_VERSION = "";
|
||||
/** The version string identifying the future version of the application to be used. This refers to the application's installer versus the application browser's installer. */
|
||||
public static final String SESSION_DATA_FUTURE_APPLICATION_VERSION = "";
|
||||
/** The compressed and serialized IList of ResourcePackages containing all resource package data from the server. The client must mix this with resource package data on the client. */
|
||||
public static final String SESSION_DATA_RESOURCE_PACKAGE_DATA = "resourcePackageData";
|
||||
/** The String[] containing jar name and jar hash pairs for required code resources. */
|
||||
public static final String SESSION_DATA_CODE_DATA = "codeData";
|
||||
|
||||
//Identifiers used to send to the server when the client is registering.//
|
||||
/** The version of the application browser (string) that is trying to make the connection. */
|
||||
public static final String REGISTRATION_APPLICATION_BROWSER_VERSION = "applicationBrowserVersion";
|
||||
/** The version of the application (string) that is trying to make the connection. */
|
||||
public static final String REGISTRATION_APPLICATION_VERSION = "applicationVersion";
|
||||
/** The proxy to the client's controller that will manage the connection. */
|
||||
public static final String REGISTRATION_CLIENT_CONTROLLER = "clientController";
|
||||
/** The name of the application that the client is trying to connect to. */
|
||||
public static final String REGISTRATION_APPLICATION_NAME = "applicationName";
|
||||
/**
|
||||
* Gets the download size and the number of chunks.
|
||||
* @param version The version to be downloaded. This should currently always be the current version.
|
||||
* @return The total size of the download in bytes.
|
||||
*/
|
||||
public int getClientDownloadSize(String version);
|
||||
/**
|
||||
* Downloads the requested client version to the client. This method may not be supported in the future.
|
||||
* @param version The version to be downloaded. This should currently always be the current version.
|
||||
* @param previouslyDownloadedByteCount The number of bytes already on the client.
|
||||
* @return A series of bytes begining right after the last downloaded byte number.
|
||||
*/
|
||||
public byte[] getClientDownloadChunk(String version, int previouslyDownloadedByteCount);
|
||||
/**
|
||||
* Registers a client with the server.
|
||||
* @param registrationData A map of registration data. The map is used to allow changes to occur without preventing old clients from connecting and being told they require updating. See the REGISTRATION_ identifiers.
|
||||
* @return The map of session data, including: The client's unique id number that it must use when sending messages; signed license; session proxy or alternate server address; and/or client version change information; and the resource packages data. This may be null if the application is not being served.
|
||||
*/
|
||||
public LiteHashMap registerClient(IHashMap registrationData);
|
||||
}//IThinServerController//
|
||||
Reference in New Issue
Block a user