info.aduna.gee.publication.servlets
Class ServerZpadServlet

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by info.aduna.gee.publication.servlets.ServerZpadServlet
All Implemented Interfaces:
EntryConstants, LocalNames, FileNames, UserTypes, Serializable, Runnable, javax.servlet.Servlet, javax.servlet.ServletConfig

public class ServerZpadServlet
extends javax.servlet.http.HttpServlet
implements LocalNames, EntryConstants, FileNames, Runnable, UserTypes

See Also:
Serialized Form

Field Summary
protected static DatabasePreloader _databasePreloader
           
protected static Thread _transientThread
           
static MultiLevelExpiringCache cachedSzAdvanceds
           
static MultiLevelExpiringCache cachedSzCalendars
           
static MultiLevelExpiringCache cachedSzFinds
           
static MultiLevelExpiringCache cachedSzInCoverHierMenus
           
static MultiLevelExpiringCache cachedSzInCoverJousts
           
static MultiLevelExpiringCache cachedSzThemes
           
static MultiLevelExpiringCache cachedSzZpadRunnings
          For efficiency, cache - SzZpadRunning.html - SzThemes.html - SzCalendar.html - SzFind.html - SzNotFound.html - SzAdvanced.html Refreshed by TemplateCache! Only because we use an overall cache size (see refresh()), it is acceptable to have the host as the first key argument in the MultiLevelExpiringCache.
static Map threadToSession
           
 
Fields inherited from interface info.aduna.gee.publication.LocalNames
AM, APRIL, AUGUST, BUTTON_ADD, BUTTON_ASSOCIATES_MAY_NOT_EDIT, BUTTON_BACKUP, BUTTON_BOTTOM, BUTTON_CLEAR, BUTTON_CLEAR_CART, BUTTON_DELETE, BUTTON_DESCRIPTION, BUTTON_DOWN, BUTTON_EDIT, BUTTON_EDIT_CLABELS, BUTTON_EDIT_SUBSCRIPTION, BUTTON_EDIT_SUBSCRIPTIONS, BUTTON_ENTRY_FROM_CLIPBOARD, BUTTON_ENTRY_TO_CLIPBOARD, BUTTON_EXIT_EDIT_MODE, BUTTON_FAST_BACKWARD, BUTTON_FAST_FORWARD, BUTTON_FIND_FUTURE, BUTTON_FIND_PAST, BUTTON_INTERNALIZE_ENTRY, BUTTON_LINK, BUTTON_LINK_IN_FRAME, BUTTON_LOCK_ZPAD, BUTTON_MORE_TEXT, BUTTON_NEXTCONTENT, BUTTON_PERSONALIZE, BUTTON_PL0, BUTTON_PL1, BUTTON_PL2, BUTTON_PL3, BUTTON_PL4, BUTTON_PREVIOUSCONTENT, BUTTON_PROVIDE_ENTRY, BUTTON_RE_EXPORT, BUTTON_RE_MANUAL, BUTTON_REPEAT, BUTTON_REPEAT_TODAY, BUTTON_RESTORE, BUTTON_SEND_ORDER, BUTTON_SUGGESTED_DESTINATION, BUTTON_SUMMARY, BUTTON_SYNCHRONIZE, BUTTON_TIME, BUTTON_TODAY, BUTTON_TOMORROW, BUTTON_TOOLS, BUTTON_TOP, BUTTON_UNDO, BUTTON_UP, BUTTON_UPLOAD_IMAGE, BUTTON_YESTERDAY, CONFIRM_BACKUP_ERROR, CONFIRM_CHANGE_ALL_REPEATING, CONFIRM_CLABEL_DEFINITION_FORMAT, CONFIRM_COULD_NOT_SAVE, CONFIRM_DELETE_ALL_REPEATING, CONFIRM_DELETE_EXPIRED, CONFIRM_ERROR, CONFIRM_FILE_CHANGED, CONFIRM_FILE_CHANGED_TITLE, CONFIRM_FILE_REALLY_CHANGED, CONFIRM_FIND_CONTENT, CONFIRM_FIRST_SECTION, CONFIRM_HAS_THEMES_FRAME, CONFIRM_MIXED_TODAY, CONFIRM_NO_MORE_CONTENT, CONFIRM_NOT_A_ZPAD, CONFIRM_NOT_REMOVE_SECTION, CONFIRM_QUESTION, CONFIRM_READONLY_BROWSER, CONFIRM_SURE, CONFIRM_THIS_ZPAD, CONFIRM_TODAY_IS_AT_STARTUP, CONFIRM_TODAY_IS_AT_TRANSFER, CONFIRM_UNDO, DECEMBER, ENTRY_TYPE_APPLET, ENTRY_TYPE_HTML, ENTRY_TYPE_IMAGE, ENTRY_TYPE_OBJECT, ENTRY_TYPE_TEXT, ENTRY_TYPE_TMPLD, ERROR_CONFIG_LOAD, ERROR_DATABASE_LOAD, ERROR_IMAGE_LOAD, ERROR_RESOLVE_LOCATION, ERROR_ZPAD_LOAD, EXC_INVALID_PORT_NUMBER, EXC_NO_GZIP_SUPPORT, EXC_NO_HOSTNAME_SPECIFIED, EXC_UNKNOWN_COMPR, EXC_UNKNOWN_ENCODING, EXC_VELOCITY_NOT_SHOWN, FEBRUARY, FRIDAY, FROM, GETTING_BUTTONS, GETTING_CONTENT, HTML_EDIT_ENTRY, HTML_ENTRY_EXPIRED, HTML_ENTRY_NOT_YET_INSPIRED, HTML_ENTRY_WILL_EXPIRE, HTML_MOVE_ENTRY, HTML_ZPAD_GET_ENTRY, INVALID_USER_LOCATION, JANUARY, JULY, JUNE, LABEL_ACCEPT_BATCH, LABEL_ADD_TO_CART, LABEL_ALL_CLABELS, LABEL_ALLSUB_SECTIONS, LABEL_APPLET_CODE, LABEL_APPLET_CODEBASE, LABEL_AT_STARTUP, LABEL_AT_STARTUP_BRIEF, LABEL_BACKGROUND, LABEL_BATCH_IS_MULTIPLE, LABEL_BATCH_NEW_SECTION, LABEL_BLUE, LABEL_BOTTOMUP_SUBSCRIPTION, LABEL_CART_EMPTY, LABEL_CASE_SENSITIVE, LABEL_CHOOSE_SECTION, LABEL_CHOOSE_TMPL, LABEL_CLABEL_IMAGE, LABEL_CLABEL_OVER_IMAGE, LABEL_CLABEL_RULE, LABEL_CLABELS, LABEL_CLABELS_SELECTED, LABEL_COUNT, LABEL_COVER_SECTIONS, LABEL_COVER_SPECIFIC_BUTTONS, LABEL_COVER_SPECIFIC_ENTRY_BUTTONS, LABEL_COVER_USES_HIERMENU, LABEL_COVER_USES_HIERMENU_ALL_OPTION, LABEL_COVER_USES_INPAGE, LABEL_COVER_USES_JOUST, LABEL_CURRENT_SECTIONS, LABEL_DAILY, LABEL_DATE, LABEL_DAYOFWEEK, LABEL_DESCR, LABEL_DESCRIPTION, LABEL_DESTINATION, LABEL_DONT_INHERIT, LABEL_EDIT_BATCH, LABEL_EMBED_SOURCE, LABEL_ENTRY_HTML, LABEL_ENTRY_IS_TMPL, LABEL_FOREGROUND, LABEL_GREEN, LABEL_HEIGHT, LABEL_HTML_STYLE, LABEL_ID, LABEL_IMAGE_LOCATION, LABEL_IMPORT_CLASSNAME, LABEL_IMPORT_SERVERNAME, LABEL_INHERIT_CLABELS, LABEL_INHERIT_PRIVACY_GROUPS, LABEL_INLINE_DESCRIPTION, LABEL_INPAGE_ALT_TEMPLATE_ID, LABEL_INPAGE_ALT_TEMPLATE_SOURCE, LABEL_INPAGE_SUB_TEMPLATE_ID, LABEL_INPAGE_SUB_TEMPLATE_SOURCE, LABEL_INPAGE_SUBSUB_TEMPLATE_ID, LABEL_INPAGE_SUBSUB_TEMPLATE_SOURCE, LABEL_INPAGE_TEMPLATE_ID, LABEL_INPAGE_TEMPLATE_SOURCE, LABEL_LOADED_FRAMES, LABEL_LOADED_TEMPLATES, LABEL_MONTH, LABEL_MONTHLY, LABEL_MOUNTPOINT, LABEL_MULTISUB_SECTIONS, LABEL_NEVER_EXPIRES, LABEL_NEVER_INSPIRES, LABEL_NEW_CLABEL, LABEL_NEW_FRAME, LABEL_NEW_PL_MEMBER, LABEL_NEW_SECTION, LABEL_NEW_SUBSCRIPTION, LABEL_NEW_TEMPLATE, LABEL_NEW_ZPAD_NAME, LABEL_NO_COLOR, LABEL_NO_ENTRY_SPECIFIC_PROPERTIES, LABEL_NO_FRAME, LABEL_NO_TEMPLATE_PREFERENCE, LABEL_NOT_AT_THIS_PL, LABEL_NOT_IN_CLIENTMODE, LABEL_OBJECT_LOCATION, LABEL_OCCURRING_SUBSCRIPTION, LABEL_OPTIONS, LABEL_ORDER_PRICE, LABEL_OWN_CONTENTS_ONLY, LABEL_OWN_SECTIONS, LABEL_OWNER_VERSION, LABEL_PASSWORD, LABEL_PASSWORD_ERROR, LABEL_PL_MEMBERS, LABEL_PLUS_ASSOCIATES, LABEL_PRICE, LABEL_PRICE_PER_ITEM, LABEL_PRO_VERSION, LABEL_RECURSIVE_SUBSCRIPTION, LABEL_RED, LABEL_REPEAT_1, LABEL_REPEAT_2, LABEL_REPEAT_3, LABEL_REQUIRED, LABEL_RGB, LABEL_SELECT_ZPAD, LABEL_SELECTED_ZPAD, LABEL_SHARED_SUBSCRIPTION, LABEL_SHOWING_RESULT, LABEL_STARTPOINT, LABEL_SUBSCRIPTIONS, LABEL_SYSTEM_SUBSCRIPTIONS, LABEL_THIS_IS_HTML, LABEL_THIS_ZPAD, LABEL_TMPL_DESCRIPTOR, LABEL_TMPL_ID, LABEL_TMPL_LOOP, LABEL_TMPL_NOT_AVAILABLE, LABEL_TMPL_STUBCHARS, LABEL_TODAY, LABEL_TOPDOWN_SUBSCRIPTION, LABEL_TOTAL_PRICE, LABEL_TRANSLATION_URL, LABEL_UNCLASSIFIED, LABEL_UP_TO_USER, LABEL_USE_RANGE, LABEL_USER_NAME, LABEL_VOLUME_DISCOUNT, LABEL_WEEKLY, LABEL_WIDTH, LABEL_YEAR, LABEL_YEARLY, MARCH, MAY, MONDAY, MORE, NO_CONTENT_IN_PAGE, NOVEMBER, OCTOBER, PM, PRESSED_DATE_POPUP, PRESSED_EDIT_POPUP, PRESSED_FIND_POPUP, PRESSED_META_POPUP, PRESSED_PERSONALIZE_POPUP, PRESSED_PRIVL_POPUP, PRESSED_SECTION_POPUP, PRESSED_TOOLS_POPUP, QUESTION_ENTRY_TO_CLIPBOARD, QUESTION_OVERWRITE_BACKUP, QUESTION_REPLACE_WITH_BACKUP, QUESTION_SELECT_ADVANCED_VERSION, REMOVE, SATURDAY, SAVING_CONTENT, SEARCH_FOR_MANUAL, SEARCH_FOR_PRIVACY_LEVEL, SEARCH_FOR_PROVIDE_PL, SEARCH_FOR_RE_EXPORT, SEARCH_FOR_RE_MANUAL, SEARCH_FOR_SUBSCRIPTION, SEARCH_FOR_TIME, SEARCH_FOR_TYPE, SEPTEMBER, SHOULD_SYNC, SUNDAY, TEMPLATE_NOT_AVAILABLE, THURSDAY, TITLE_ADD_ALIAS, TITLE_ADD_APPLET, TITLE_ADD_EMBED, TITLE_ADD_HTML, TITLE_ADD_IMAGE, TITLE_ADD_IMPORT, TITLE_ADD_OBJECT, TITLE_ADD_TEXT, TITLE_ADD_TMPLD, TITLE_ADVANCED_ZPAD, TITLE_CHANGE_COVER, TITLE_CLABEL_DEFINITIONS, TITLE_CLABEL_SELECTION, TITLE_COPY_TO, TITLE_COVER_OPTIONS, TITLE_COVER_SECTIONS, TITLE_DATE_OFFSET, TITLE_DATE_SECTIONS, TITLE_DATE_SPEC, TITLE_DESTINATION, TITLE_EDIT_CATEGORIES, TITLE_EDIT_PRIVACY_GROUPS, TITLE_EDIT_SHEET, TITLE_ENTRY_ATTRIBS, TITLE_ENTRY_EXPIRATION, TITLE_ENTRY_INSPIRATION, TITLE_ENTRY_PARAMS, TITLE_ENTRY_PROPS, TITLE_EXPIRED_HANDLING, TITLE_EXTERNAL_SECTIONS, TITLE_FIND_ENTRY, TITLE_FIRST_SECTION, TITLE_IDENTIFY_YOURSELF, TITLE_INSTANT_COVER, TITLE_LAST_SECTION, TITLE_LOGIN_DIALOG, TITLE_MANIPULATE_SECTION, TITLE_MOVE_ENTRY, TITLE_MOVE_TO, TITLE_NAVIGATOR, TITLE_PERSONALIZE_SHEET, TITLE_PL_GROUPS, TITLE_REMOVE_ALIAS, TITLE_REMOVE_FILE, TITLE_REMOVE_IMAGE, TITLE_SELECT_DATE, TITLE_SELECT_PL, TITLE_SELECT_SECTION, TITLE_SELECT_TMPL, TITLE_SET_CLABEL_IMAGES, TITLE_SET_COLOR, TITLE_SET_COLORS, TITLE_SET_FRAME, TITLE_SET_HTML, TITLE_SET_PL, TITLE_START_SECTION, TITLE_STATISTICS, TITLE_SUBSCRIPTIONS, TITLE_TEMPLATE_PREFERENCE, TITLE_TOOLS_SHEET, TITLE_TRANSFER, TITLE_UPLOAD_FILE, TITLE_USER_SECTIONS, TO, TUESDAY, WEDNESDAY, ZPAD
 
Fields inherited from interface info.aduna.gee.publication.content.EntryConstants
ACLS_PREFIX, AFTER_TRANSFER, APPLET_TYPE_VALUE, ASSOCIATES_EDIT_LEVEL, BEFORE_STORAGE, BEFORE_TRANSFER, CODE_KEY, CODEBASE_KEY, CONSTRUCTION_KEY, CONTAINER_TTL_KEY, CONTAINERID_KEY, CONTAINERPROPS_KEY, DBPRIVACY_LEVEL_KEY, DESCRIPTION_KEY, EMBED_TYPE_VALUE, END_TIME_KEY, ENTRY_ID_KEY, ENTRYATTRIBS_KEY, ENTRYPARAMS_KEY, ENTRYPROPS_KEY, EXPIRES_KEY, EXTERNAL_ENTRY_KEY, HEIGHT_KEY, HTML_KEY, HTML_TYPE_VALUE, ID2IDID_KEY, IMAGE_TYPE_VALUE, IMPORT_CLASSNAME, IMPORT_DONT_FORWARD, IMPORT_IMPORTED, IMPORT_LANGUAGE, IMPORT_SERVER_NAME, IMPORT_TYPE_VALUE, INFO_EXTENSION, INHERIT_CONFIGURATION, INLINE_DESCRIPTION_IS_HTML_KEY, INLINE_DESCRIPTION_KEY, INSPIRES_KEY, JIT_DESTINATION, JIT_DESTINATION_INDEX, LINK_IN_FRAME_KEY, LINK_KEY, MANUAL_KEY, MINIMALHEIGHT_KEY, MINIMALWIDTH_KEY, NAVIGATION_KEY, OBJECT_TYPE_VALUE, OCCURRING_CLABELS_KEY, OVERRIDE_SUGGESTION_KEY, PRIVACY_LEVEL_KEY, PROVIDE_KEY, PROVIDE_PL_KEY, QUALIFIED_BASE_KEY, RE_EXPORT_KEY, RE_MANUAL_KEY, REPEAT_ID_KEY, REPEAT_TODAY_KEY, REQUIRES_NEW_PAGE, ROTATABLE_KEY, SHARED_CLABELS_KEY, SHOP_GIF_KEY, SHOP_GIF_LOCATION_KEY, SHOP_ID_KEY, SHOP_ORIGIN_KEY, SHOP_OVER_GIF_KEY, SORT_CLABELS, SORT_DESCRIPTION, SOURCE_KEY, STARTSECTION_KEY, SUBSCRIBED_COLOR_KEY, SUBSCRIBED_GIF_KEY, SUBSCRIBED_GIF_LOCATION_KEY, SUBSCRIBED_OVER_GIF_KEY, SUBSCRIBED_VISIBLE_CLABELS_KEY, SUBSCRIPTION_KEY, SUBSCRIPTION_LINK_KEY, SUGGESTION_KEY, SUMMARY_IS_HTML_KEY, SUMMARY_KEY, SUMMARY_TYPE_VALUE, TEMPLATEPREFERENCES_KEY, TEXT_KEY, TEXT_TYPE_VALUE, TIME_KEY, TMPL_DESCRIPTOR_KEY, TMPL_FOREIGN_ID_KEY, TMPL_ID_KEY, TMPL_PREFERENCES_KEY, TMPL_STUB_RECOGNIZER_KEY, TMPLD_TYPE_VALUE, TYPE_KEY, WIDTH_KEY
 
Fields inherited from interface info.aduna.gee.publication.net.FileNames
ASA_FILE_NAME, BAK_FILE_NAME, CAT_FILE_NAME, CFG_FILE_NAME, CHS_FILE_NAME, DAT_FILE_NAME, HLP_FILE_NAME, LOCAL_FILE_PREFIX, SBS_FILE_NAME, SSS_FILE_NAME, WIF_FILE_NAME
 
Fields inherited from interface info.aduna.gee.publication.UserTypes
API_BIT, COVER_BUILDER_BIT, ENGINE_BIT, GUEST_BITS, OWNER_BITS, PRO_BITS, PROUSER_BIT, SERVER_BIT, SHOP_BIT, SHOW_BIT, SHOW_BITS, VISITOR_BIT
 
Constructor Summary
ServerZpadServlet()
           
 
Method Summary
protected static void _setDaemonThreads(ServerZpadServlet servlet)
           
protected  String _showURL(javax.servlet.http.HttpServletRequest request, String host, ZPadBrowser zpadBrowser, Section theSection, String theUser, String theLanguage, String theCover, HashMap stubsMap, javax.servlet.http.HttpSession theSession)
          Show the URL of an Entry.
protected static void _touchTransient(String host, String theUser, long tnow)
          Note an access time for a user (compare to UNIX' touch).
protected static void _touchTransient(ZPadBrowser zpadBrowser)
          Note an access time for all channels behind a browser (compare to UNIX' touch).
static Section addSection(ZPadBrowser zpadBrowser, String host, String theUser, String theLanguage, String theCover, String theSectionIndicator, javax.servlet.http.HttpSession theSession)
           
static ZPadBrowser addZPadBrowser(javax.servlet.http.HttpServletRequest request, String host, String theUser, String theLanguage, String theCover, javax.servlet.http.HttpSession theSession)
          Get (and if needed: add first) a ZPadBrowser
static void checkTransient(ZPadBrowser zpadBrowser)
          A zpadBrowser is removed from the browser cache.
 void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
           
static void forgetLanguage()
          Useful for the side-effect only: forget the language for the current Thread.
static String getFramesetURL(javax.servlet.http.HttpServletRequest request, String cover, String framename)
          Get the URL of the frameset to use.
static String getInitState(javax.servlet.http.HttpServletRequest request, String user, String cover)
          Get the initial state.
static String getLanguage(javax.servlet.http.HttpServletRequest request)
           
static String getLanguage(String serverPath, String host, String language)
          Useful for the side-effect only: set the language for the current Thread.
 String getServletInfo()
           
 void init(javax.servlet.ServletConfig config)
           
static void refresh(String host)
           
static void refresh(String host, String user)
          Forget everything about a user.
static void refresh(String host, SzState ulcState, javax.servlet.http.HttpSession session)
          ZPadBrowser identified by state requests for a refresh of all existing cached pages.
static void reload(String serverPath, String host, String user, String fileName, WStorable newOne)
          Reload an object stored in a (real!) user's directory.
static void remove(String host, String user)
          Remove everything (..) of a user.
 void run()
          The run for multiple Daemon tasks of the server.
static void sendZpadIndex(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String ulcStateString)
          Send a list of all pages in a Zpad.
static String setFrameAndPage(javax.servlet.http.HttpServletRequest request, String host, ZPadBrowser zpadBrowser, Section theSection, String theUser, String theLanguage, String theCover, HashMap stubsMap, String newSectionIndicator, int newPage, javax.servlet.http.HttpSession theSession, int entryId)
           
 String toString()
           
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service, service
 
Methods inherited from class javax.servlet.GenericServlet
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

threadToSession

public static Map threadToSession

_transientThread

protected static Thread _transientThread

_databasePreloader

protected static DatabasePreloader _databasePreloader

cachedSzZpadRunnings

public static MultiLevelExpiringCache cachedSzZpadRunnings
For efficiency, cache - SzZpadRunning.html - SzThemes.html - SzCalendar.html - SzFind.html - SzNotFound.html - SzAdvanced.html Refreshed by TemplateCache! Only because we use an overall cache size (see refresh()), it is acceptable to have the host as the first key argument in the MultiLevelExpiringCache.


cachedSzThemes

public static MultiLevelExpiringCache cachedSzThemes

cachedSzInCoverJousts

public static MultiLevelExpiringCache cachedSzInCoverJousts

cachedSzInCoverHierMenus

public static MultiLevelExpiringCache cachedSzInCoverHierMenus

cachedSzCalendars

public static MultiLevelExpiringCache cachedSzCalendars

cachedSzFinds

public static MultiLevelExpiringCache cachedSzFinds

cachedSzAdvanceds

public static MultiLevelExpiringCache cachedSzAdvanceds
Constructor Detail

ServerZpadServlet

public ServerZpadServlet()
Method Detail

_setDaemonThreads

protected static void _setDaemonThreads(ServerZpadServlet servlet)

init

public void init(javax.servlet.ServletConfig config)
          throws javax.servlet.ServletException
Specified by:
init in interface javax.servlet.Servlet
Overrides:
init in class javax.servlet.GenericServlet
Throws:
javax.servlet.ServletException

refresh

public static void refresh(String host)

getFramesetURL

public static String getFramesetURL(javax.servlet.http.HttpServletRequest request,
                                    String cover,
                                    String framename)
Get the URL of the frameset to use.


getServletInfo

public String getServletInfo()
Specified by:
getServletInfo in interface javax.servlet.Servlet
Overrides:
getServletInfo in class javax.servlet.GenericServlet

doGet

public void doGet(javax.servlet.http.HttpServletRequest request,
                  javax.servlet.http.HttpServletResponse response)
           throws javax.servlet.ServletException,
                  IOException
Overrides:
doGet in class javax.servlet.http.HttpServlet
Throws:
javax.servlet.ServletException
IOException

toString

public String toString()
Overrides:
toString in class Object

getInitState

public static String getInitState(javax.servlet.http.HttpServletRequest request,
                                  String user,
                                  String cover)
Get the initial state. Used by IsServlet which doesn't know anything about SZ things. Call this method only once or otherwise give it an extra argument that states whether or not hits should be noticed.


forgetLanguage

public static void forgetLanguage()
Useful for the side-effect only: forget the language for the current Thread.


getLanguage

public static String getLanguage(String serverPath,
                                 String host,
                                 String language)
Useful for the side-effect only: set the language for the current Thread.


getLanguage

public static String getLanguage(javax.servlet.http.HttpServletRequest request)

addZPadBrowser

public static ZPadBrowser addZPadBrowser(javax.servlet.http.HttpServletRequest request,
                                         String host,
                                         String theUser,
                                         String theLanguage,
                                         String theCover,
                                         javax.servlet.http.HttpSession theSession)
Get (and if needed: add first) a ZPadBrowser


addSection

public static Section addSection(ZPadBrowser zpadBrowser,
                                 String host,
                                 String theUser,
                                 String theLanguage,
                                 String theCover,
                                 String theSectionIndicator,
                                 javax.servlet.http.HttpSession theSession)

setFrameAndPage

public static String setFrameAndPage(javax.servlet.http.HttpServletRequest request,
                                     String host,
                                     ZPadBrowser zpadBrowser,
                                     Section theSection,
                                     String theUser,
                                     String theLanguage,
                                     String theCover,
                                     HashMap stubsMap,
                                     String newSectionIndicator,
                                     int newPage,
                                     javax.servlet.http.HttpSession theSession,
                                     int entryId)

_showURL

protected String _showURL(javax.servlet.http.HttpServletRequest request,
                          String host,
                          ZPadBrowser zpadBrowser,
                          Section theSection,
                          String theUser,
                          String theLanguage,
                          String theCover,
                          HashMap stubsMap,
                          javax.servlet.http.HttpSession theSession)
Show the URL of an Entry. Returns an template and fills stubsmap.


run

public void run()
The run for multiple Daemon tasks of the server.

Specified by:
run in interface Runnable

refresh

public static void refresh(String host,
                           SzState ulcState,
                           javax.servlet.http.HttpSession session)
ZPadBrowser identified by state requests for a refresh of all existing cached pages.


refresh

public static void refresh(String host,
                           String user)
Forget everything about a user. Used at the time of join or disjoin. The lowest level refresh will trigger all higher levels automatically.


reload

public static void reload(String serverPath,
                          String host,
                          String user,
                          String fileName,
                          WStorable newOne)
Reload an object stored in a (real!) user's directory. Required in order to synchronize regular Zpad store operations and ServerZPad.


remove

public static void remove(String host,
                          String user)
Remove everything (..) of a user. Note: we don't remove his Cache (although theoretically that should be done). It will be done at midnight ;-)


sendZpadIndex

public static void sendZpadIndex(javax.servlet.http.HttpServletRequest request,
                                 javax.servlet.http.HttpServletResponse response,
                                 String ulcStateString)
                          throws IOException
Send a list of all pages in a Zpad. It's any ugly list, doesn't matter. Not for human consumption.

Throws:
IOException

_touchTransient

protected static void _touchTransient(ZPadBrowser zpadBrowser)
Note an access time for all channels behind a browser (compare to UNIX' touch).


_touchTransient

protected static void _touchTransient(String host,
                                      String theUser,
                                      long tnow)
Note an access time for a user (compare to UNIX' touch).


checkTransient

public static void checkTransient(ZPadBrowser zpadBrowser)
A zpadBrowser is removed from the browser cache. If it was a transient one, destroy it completely.



Copyright © 1997-2008 Aduna. All Rights Reserved.