## org.w3c.jigedit.webdav.frames
Class CvsDAVFileFrame

    java.lang.Object
      |
      +--org.w3c.tools.resources.AttributeHolder
            |
            +--org.w3c.tools.resources.Resource
                  |
                  +--org.w3c.tools.resources.FramedResource
                        |
                        +--org.w3c.tools.resources.ResourceFrame
                              |
                              +--org.w3c.tools.resources.ProtocolFrame
                                    |
                                    +--org.w3c.jigsaw.frames.HTTPFrame
                                          |
                                          +--org.w3c.jigsaw.frames.PostableFrame
                                                |
                                                +--org.w3c.jigsaw.webdav.DAVFrame
                                                      |
                                                      +--org.w3c.jigedit.webdav.frames.CvsDAVFileFrame

public class CvsDAVFileFrame
extends DAVFrame

This subclass of HTTPFrame check cvs before performing a PUT request. If a CVS directory exists

If the resource file exists

If resource file not up to date Fail.
Else perform PUT and commit it into cvs.

Else perform PUT, add and commit it into cvs.

Else perform PUT.

Field Summary
`static boolean` `debug`
`protected java.io.File` `resDirectory`

Fields inherited from class org.w3c.jigsaw.webdav.DAVFrame
`ATTR_CREATION_DATE, ATTR_DEAD_PROPERTIES, ATTR_LOCK_DATE, ATTR_LOCK_DEPTH, ATTR_LOCK_OWNER, ATTR_LOCK_TIMEOUT, ATTR_LOCK_TOKEN, ATTR_LOCK_USERNAME, COND_OK_LOCK, deadindex, deadpropmodified, debug, debugxml, DEFAULT_LOCK_TIMEOUT, LOCK_EXPIRE, LOCK_OWNER, LOCK_TIMEOUT, LOCK_TOKEN, LOCK_USERNAME, LOCKED_REREFENCE, manager, MAX_LOCK_TIMEOUT, ownerNode, REMAINING_PATH, xmlcontenttype`

Fields inherited from class org.w3c.jigsaw.frames.PostableFrame
`ATTR_CONVERT_GET, ATTR_OVERIDE`

Fields inherited from class org.w3c.jigsaw.frames.HTTPFrame

`acceptRanges, allowed, ATTR_ALLOW_DEL, ATTR_BROWSABLE, ATTR_CHARSET, ATTR_CONTENT_ENCODING, ATTR_CONTENT_LANGUAGE, ATTR_CONTENT_LENGTH, ATTR_CONTENT_TYPE, ATTR_ICON, ATTR_ICONDIR, ATTR_INDEX, ATTR_INDEXES, ATTR_MAXAGE, ATTR_MD5, ATTR_PUTABLE, ATTR_QUALITY, ATTR_RELOCATE, ATTR_STYLE_LINK, ATTR_TITLE, browsetype, COND_FAILED, COND_OK, COND_WEAK, dresource, fresource, listing, listing_stamp, STATE_CONTENT_LOCATION`

Fields inherited from class org.w3c.tools.resources.ResourceFrame
`filterClass, frameListener, resource`

Fields inherited from class org.w3c.tools.resources.FramedResource
`ATTR_OID, attrListener, debugEvent, event_disabled, framesRef, structListener`

Fields inherited from class org.w3c.tools.resources.Resource
`ATTR_CONTEXT, ATTR_HELP_URL, ATTR_IDENTIFIER, ATTR_LAST_MODIFIED, ATTR_PARENT, ATTR_RESOURCE_FRAMES, ATTR_STORE_ENTRY, ATTR_URL, co, id`

Fields inherited from class org.w3c.tools.resources.AttributeHolder
`attributes, values`

Constructor Summary
`CvsDAVFileFrame()`

Method Summary
`protected void` `add(Request request)`
`protected boolean` `checkCvsManager()`
`protected void` `commit(Request request)`
`protected void` `commit(Request request, java.lang.String msg)`
`protected Reply` `deleteFileResource(Request request)` The DELETE method delete the file and perform a cvs remove.
`protected static Reply` `error(Request request, int status, java.lang.String title, java.lang.String msg)`
`protected java.io.File` `getBackupFile()`
`protected CvsDirectory` `getCvsManager()`
`protected java.io.File` `getResourceDirectory()`
`boolean` `isAutoUpdatable()` tell if we must always do an update.
`ReplyInterface` `perform(RequestInterface req)` Perform a cvs update before perform a GET,HEAD,POST request.
`protected Reply` `putFileResource(Request request)` Change the content of the associated FileResource.
`protected int` `status()`
`protected java.lang.String` `statusToString(int status)`
`protected void` `update()`

Methods inherited from class org.w3c.jigsaw.webdav.DAVFrame

`acceptRedirect, addContentLanguage, addContentLength, addContentType, addCreationDate, addDisplayName, addETag, addLastModified, addLockDiscovery, addLockDiscovery, addResourceType, addSupportedLock, checkIf, checkLockOwner, closeInternalReply, computeDestURL, copy, copyCollection, copyCollection, copyDAVResource, copyProperties, copyResource, createDAVReply, createInternalRequest, createInternalRequest, createInternalRequest, createRequest, createRequest, createRequest, davextended, decodeURL, delete, dupReply, extended, get, getAllow, getBody, getChildResponses, getCreationDate, getCurrentLockDepth, getCurrentLockOwner, getCurrentLockTimeout, getCurrentLockToken, getCurrentLockUsername, getDeadProperties, getDeadPropertiesIndex, getNewLockToken, getProperties, getProperties, getPropertiesForCopy, getPropNames, getPropStat, getResponse, getStatusLine, getTokenExpirationDate, hasIntProperty, hasLongProperty, hasProperty, hasStringProperty, initialize, internalCopyCollection, internalCopyDAVResource, internalCopyProperties, internalCopyResource, isCollection, isLockable, isLocked, isReadOnly, lock, lock, lookupDirectory, lookupResource, matchETag, matchLockToken, mkcol, move, options, post, propfind, proppatch, put, refreshLock, registerResource, reloadDeadProperties, removeDAVProperties, removeDeadProperty, removeDeadProperty, removeLiveProperty, saveDeadProperties, setDAVProperties, setDeadProperty, setDeadProperty, setLiveProperty, setLockOwner, setTimeout, skipBody, unlock, unlock, updateLockDate`

Methods inherited from class org.w3c.jigsaw.frames.PostableFrame
`getConvertGetFlag, getOverrideFlag, handle`

Methods inherited from class org.w3c.jigsaw.frames.HTTPFrame

`addStyleSheet, attributeChanged, browse, checkExpect, checkIfMatch, checkIfModifiedSince, checkIfNoneMatch, checkIfUnmodifiedSince, checkRequest, checkValidators, computeContainerListing, computeETag, computeTrashDir, computeTrashFile, createDefaultReply, createFileReply, deleteDirectoryResource, deleteMe, deleteOtherResource, getAllowDeleteFlag, getBrowsableFlag, getBrowseType, getCharset, getContentEncoding, getContentLanguage, getContentLength, getContentType, getDirectoryListing, getDirectoryResource, getDirectoryResource, getETag, getFileResource, getFileResource, getHelpURL, getHelpURL, getIcon, getIconDirectory, getIndex, getIndexes, getMaxAge, getMD5Flag, getOtherResource, getPutableFlag, getQuality, getRelocateFlag, getStyleSheetURL, getTitle, getURL, handleRangeRequest, head, headDirectoryResource, headFileResource, headOtherResource, initialize, link, lookup, lookupFile, lookupOther, performFrames, pickleValues, putOtherResource, registerOtherResource, setValue, trace, unlink, updateCachedHeaders`

Methods inherited from class org.w3c.tools.resources.ResourceFrame
`addFrameEventListener, eventDisabled, fireFrameEvent, frameModified, getFilters, getFilters, getFrameReference, getResource, getResourceReference, getSpaceEntry, getURLPath, lookupFilters, lookupFrames, postFrameEvent, processEvent, removeFrameEventListener, unregisterResource, updateDefaultChildAttributes`

Methods inherited from class org.w3c.tools.resources.FramedResource

`addAttributeChangedListener, addStructureChangedListener, collectFramesReference, delete, disableEvent, displayEvent, enableEvent, fireAttributeChangeEvent, fireStructureChangedEvent, fireStructureChangedEvent, frameAdded, frameRemoved, getClone, getFrame, getFrame, getFrameReference, getFrameReference, getFramesReference, getOid, markModified, notifyUnload, postAttributeChangeEvent, postEvent, postStructureChangedEvent, postStructureChangedEvent, registerFrame, registerFrameIfNone, removeAttributeChangedListener, removeStructureChangedListener, setSilentValue, setSilentValue, unregisterFrame`

Methods inherited from class org.w3c.tools.resources.Resource
`acceptUnload, checkMultipleLock, collectFrames, getContext, getFrame, getFrames, getIdentifier, getLastModified, getParent, getServer, getSpace, getStoreEntry, getValue, getValue, isInitialized, isUnloaded, setContext, setContext, setValue, unsafeGetContext, unsafeGetIdentifier, unsafeGetValue, updateAttributes`

Methods inherited from class org.w3c.tools.resources.AttributeHolder
`definesAttribute, definesAttribute, getAttributes, getBoolean, getChar, getClone, getClone, getDouble, getFloat, getInt, getLong, getString, getValue, lookupAttribute, print, setBoolean, setChar, setDouble, setFloat, setInt, setLong, setString, setValue, unsafeGetString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### debug

    public static final boolean debug

### resDirectory

    protected java.io.File resDirectory

Constructor Detail

### CvsDAVFileFrame

    public CvsDAVFileFrame()

Method Detail

### error

    protected static Reply error(Request request,
                                 int status,
                                 java.lang.String title,
                                 java.lang.String msg)

### isAutoUpdatable

    public boolean isAutoUpdatable()

  tell if we must always do an update.

### getResourceDirectory

    protected java.io.File getResourceDirectory()

### getCvsManager

    protected CvsDirectory getCvsManager()
                                  throws CvsException

### checkCvsManager

    protected boolean checkCvsManager()

### add

    protected void add(Request request)
                throws CvsException

  Throws:
    CvsException - if the CVS process failed

### commit

    protected void commit(Request request)
                   throws CvsException

  Throws:
    CvsException - if the CVS process failed

### commit

    protected void commit(Request request,
                          java.lang.String msg)
                   throws CvsException

  Throws:
    CvsException - if the CVS process failed

### update

    protected void update()
                   throws CvsException

  Throws:
    CvsException - if the CVS process failed

### status

    protected int status()
                  throws CvsException

  Throws:
    CvsException - if the CVS process failed

### statusToString

    protected java.lang.String statusToString(int status)

### getBackupFile

    protected java.io.File getBackupFile()

### putFileResource

    protected Reply putFileResource(Request request)
                             throws ProtocolException,
                                    ResourceException

  Change the content of the associated FileResource. +cvs action (commit, update)
  Overrides:
    putFileResource in class HTTPFrame
  Parameters:
    `request` - The incomming request.
  Throws:
    ProtocolException - if a protocol error occurs
    ResourceException - if a server error occurs

### deleteFileResource

    protected Reply deleteFileResource(Request request)
                                throws ProtocolException,
                                       ResourceException

  The DELETE method delete the file and perform a cvs remove.
  Overrides:
    deleteFileResource in class HTTPFrame
  Parameters:
    `request` - The request to handle.
  Throws:
    ProtocolException - if a protocol error occurs
    ResourceException - If the resource got a fatal error.

### perform

    public ReplyInterface perform(RequestInterface req)
                           throws ProtocolException,
                                  ResourceException

  Perform a cvs update before perform a GET,HEAD,POST request.
  Overrides:
    perform in class DAVFrame
  Parameters:
    `req` - The request to handle.
  Throws:
    ProtocolException - If processsing the request failed.
    ResourceException - If the resource got a fatal error.