src.modules
Class SYOModule

java.lang.Object
  extended bysrc.server.ModuleClass
      extended bysrc.modules.SYOModule
All Implemented Interfaces:
Module

public class SYOModule
extends ModuleClass

Provides information about the available courses for program/academic year pairs. It provides the code, name, credits, period and website of the courses. The module also provides additional info about specific courses specified by their course code. Based on the study book http://www.kth.se/student/studiehandbok/04/lot_lista.asp . Example queries:

TODO Room for improvement, search for courses etc.

Version:
2005-maj-08

Constructor Summary
SYOModule()
           
 
Method Summary
 boolean isValidCache(ModuleQuery query, java.lang.String cachedUserId, long cacheAge)
          Checks if a cached result is valid or not based on how long ago the result was cached.
 Package processQuery(ModuleQuery query)
          Process a user sent query.
 
Methods inherited from class src.server.ModuleClass
getModuleMeta, processSettingRequest, processSettingRequest, setModuleMeta
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SYOModule

public SYOModule()
Method Detail

isValidCache

public boolean isValidCache(ModuleQuery query,
                            java.lang.String cachedUserId,
                            long cacheAge)
Description copied from interface: Module
Checks if a cached result is valid or not based on how long ago the result was cached. Some services might work fine with returning very old cached results, for instance the result of a map service wont change (often at least) and most cache ages would then be valid. Other things like news services on the other hand should not allow a long cache age.

Parameters:
query - The user query that resulted in the cached result. The user's query parameters are identical to the cached query parameters.
cachedUserId - The userId of the query that is cached.
cacheAge - The number of seconds that has elapsed since the cached version was cached.
Returns:
True if the cache should be concidered to still be valid. False otherwise.

processQuery

public Package processQuery(ModuleQuery query)
Description copied from interface: Module
Process a user sent query. This is very individual depending on the service provided by the module.

Parameters:
query - The user sent query.
Returns:
An ErrorPackage if an error occured while processing the query, an OutputPackage with the result otherwise.