org.mmbase.module.builders
Class Netfiles

java.lang.Object
  extended by org.mmbase.util.functions.FunctionProvider
      extended by org.mmbase.module.core.MMTable
          extended by org.mmbase.module.core.MMObjectBuilder
              extended by org.mmbase.module.builders.Netfiles
All Implemented Interfaces:
EventListener, NodeEventListener, RelationEventListener

public class Netfiles
extends MMObjectBuilder

The Netfiles builder stores information on files that need to be transferred to other servers. It is used in the CACHE PAGE routine, that is used to cache SCAN pages. Information in NetFiles is used by a number of VWMs (i.e. PageMaster and ImageMaster), which schedules the transfer of the files.
Each NetFile entry contains the following information:

Version:
$Id: Netfiles.java 35335 2009-05-21 08:14:41Z michiel $
Author:
Daniel Ockeloen

Field Summary
(package private)  NetFileSrv netfilesrv
          Reference to the NetFileServ builder
static int STATUS_CALC_PAGE
          Status for a netfile indicating a request to be recalculated
static int STATUS_CHANGED
          Status for a netfile indicating a change
static int STATUS_DONE
          Status for a netfile indicating its request has been handled
static int STATUS_ON_ITS_WAY
          Status for a netfile indicating its request is being handled
static int STATUS_REQUEST
          Status for a netfile indicating a service request
 
Fields inherited from class org.mmbase.module.core.MMObjectBuilder
AGE_PARAMETERS, broadCastChanges, DEFAULT_ALINEA, DEFAULT_EOL, description, descriptions, EVENT_TYPE_LOCAL, EVENT_TYPE_REMOTE, FIELD_NUMBER, FIELD_OBJECT_TYPE, FIELD_OWNER, fields, genericBlobCache, getFunctions, GUI_INDICATOR, GUI_PARAMETERS, guiFunction, infoFunction, internalVersion, nodeCache, oType, pluralNames, searchAge, singularNames, SYSTEM_OWNER, TEMPNODE_DEFAULT_SIZE, TMP_FIELD_EXISTS, TMP_FIELD_NUMBER, virtual, WRAP_PARAMETERS, wrapFunction
 
Fields inherited from class org.mmbase.module.core.MMTable
maxNodesFromQuery, mmb, storageConnector, tableName
 
Fields inherited from class org.mmbase.util.functions.FunctionProvider
functions
 
Constructor Summary
Netfiles()
           
 
Method Summary
 String getGUIIndicator(String field, MMObjectNode node)
          What should a GUI display for this node/field combo.
 boolean nodeLocalChanged(String machine, String number, String builder, String ctype)
          Called when a local node is changed.
 boolean nodeRemoteChanged(String machine, String number, String builder, String ctype)
          Called when a remote node is changed.
 
Methods inherited from class org.mmbase.module.core.MMObjectBuilder
addEventListener, addField, addLocalObserver, addRemoteObserver, broadcastChanges, checkAddTmpField, clearBlobCache, commit, create, createAlias, createAlias, delete, equals, equals, executeFunction, executeFunction, fieldLocalChanged, getAncestors, getBlobCache, getClassName, getConfigFile, getConfigResource, getDataTypeCollector, getDBState, getDBType, getDefaultTeaser, getDefaultUrl, getDescendants, getDescription, getDescription, getDescriptions, getEmptyNode, getField, getFieldNames, getFields, getFields, getFunction, getFunctionParameters, getFunctions, getGUIIndicator, getGUIIndicator, getHTML, getInitParameter, getInitParameters, getInitParameters, getInternalVersion, getList, getLocaleGUIIndicator, getLocaleGUIIndicator, getMachineName, getMaintainer, getNewNode, getNewTmpNode, getNextField, getNextField, getNode, getNode, getNode, getNodeFromCache, getNodeGUIIndicator, getNumber, getObjectType, getObjectValue, getParentBuilder, getPluralName, getPluralName, getPluralNames, getRelations_main, getSearchAge, getShort, getShortedByte, getShortedInputStream, getShortedText, getSingularName, getSingularName, getSingularNames, getSmartPath, getTmpNode, getURLEncode, getValue, getVersion, getWAP, getXMLPath, hasField, hashCode, hashCode, hostname_function, init, insert, insert, isExtensionOf, isNodeCached, isNull, isVirtual, loadInitParameters, newFunctionInstance, notify, notify, preCommit, process, removeEventListener, removeField, removeLocalObserver, removeNode, removeRelations, removeRemoteObserver, removeSyncNodes, replace, safeCache, sendFieldChangeSignal, setDefaults, setDescription, setDescriptions, setFields, setInitParameter, setMaintainer, setPluralNames, setSearchAge, setSingularNames, setUniqueValue, setUniqueValue, setValue, setValue, setVersion, setXMLPath, shutdown, testValidData, toString, toString, update, updateFields, wrap
 
Methods inherited from class org.mmbase.module.core.MMTable
count, count, created, getFullTableName, getMMBase, getNode, getNodes, getNodes, getNodes, getNodeType, getStorageConnector, getTableName, search, searchVector, setMMBase, setTableName, size
 
Methods inherited from class org.mmbase.util.functions.FunctionProvider
addFunction, createParameters, getFunction, getFunctions, getFunctionValue
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

STATUS_REQUEST

public static final int STATUS_REQUEST
Status for a netfile indicating a service request

See Also:
Constant Field Values

STATUS_ON_ITS_WAY

public static final int STATUS_ON_ITS_WAY
Status for a netfile indicating its request is being handled

See Also:
Constant Field Values

STATUS_DONE

public static final int STATUS_DONE
Status for a netfile indicating its request has been handled

See Also:
Constant Field Values

STATUS_CHANGED

public static final int STATUS_CHANGED
Status for a netfile indicating a change

See Also:
Constant Field Values

STATUS_CALC_PAGE

public static final int STATUS_CALC_PAGE
Status for a netfile indicating a request to be recalculated

See Also:
Constant Field Values

netfilesrv

NetFileSrv netfilesrv
Reference to the NetFileServ builder

Constructor Detail

Netfiles

public Netfiles()
Method Detail

getGUIIndicator

public String getGUIIndicator(String field,
                              MMObjectNode node)
What should a GUI display for this node/field combo. For "status', it returns a description of the current netfile state. Otherwise it returns null.

Overrides:
getGUIIndicator in class MMObjectBuilder
Parameters:
node - The node to display
field - the name field of the field to display
Returns:
the display of the node's field as a String, null if not specified

nodeRemoteChanged

public boolean nodeRemoteChanged(String machine,
                                 String number,
                                 String builder,
                                 String ctype)
Called when a remote node is changed. This routine invokes the NetFileServ builder to handle the change (which involves calling the VWM that handles the service). Only active for certain servers. The check what servers support this is currently specific for the VPRO and should be changed.

Overrides:
nodeRemoteChanged in class MMObjectBuilder
Parameters:
number - Number of the changed node as a String
builder - type of the changed node
ctype - command type, 'c'=changed, 'd'=deleted', 'r'=relations changed, 'n'=new
machine - Name of the machine that changed the node.
Returns:
true if maintenance was performed, false (the default) otherwise

nodeLocalChanged

public boolean nodeLocalChanged(String machine,
                                String number,
                                String builder,
                                String ctype)
Called when a local node is changed. This routine invokes the NetFileServ builder to handle the change (which involves calling the VWM that handles the service). Only active for certain servers. The check what servers support this is currently specific for the VPRO and should be changed.

Overrides:
nodeLocalChanged in class MMObjectBuilder
Parameters:
number - Number of the changed node as a String
builder - type of the changed node
ctype - command type, 'c'=changed, 'd'=deleted', 'r'=relations changed, 'n'=new
machine - Name of the machine that changed the node.
Returns:
true if maintenance was performed, false (the default) otherwise


MMBase 2.0-SNAPSHOT - null