package com.bradmcevoy.http.webdav; import com.bradmcevoy.http.Resource; /** * Applies a proppatch result to a resource * * This interface is only really needed to support updating properties via the * old PropPatchableResource.setFields() method. The more modern way of doing * things is through the PropertySource interface, which is symmetrical for * reading and writing properties. * * * @author brad */ public interface PropPatchSetter { /** * Update the given resource with the properties specified in the parseResult * and return appropriate responses * * @param href - the address of the resource being patched * @param parseResult - the list of properties to be mutated * @param r - the resource to be updated * @return - response indicating success or otherwise for each field. Note * that success responses should not contain the value */ PropFindResponse setProperties(String href, PropPatchRequestParser.ParseResult parseResult, Resource r); /** * Return whether the given resource can be proppatch'ed with this * PropPatchSetter * * @param r * @return */ boolean supports(Resource r); }