Class NfsCreateRequest

All Implemented Interfaces:
NfsRequest
Direct Known Subclasses:
Nfs3CreateRequest

public class NfsCreateRequest extends NfsRequestBase
The request, as specified by RFC 1813 (https://tools.ietf.org/html/rfc1813).

Procedure CREATE creates a regular file.

  • Constructor Details

    • NfsCreateRequest

      public NfsCreateRequest(NfsCreateMode createMode, byte[] parentDirectoryFileHandle, String name, NfsSetAttributes attributes, byte[] verifier, Credential credential, int nfsVersion) throws FileNotFoundException
      Creates the request, as specified by RFC 1813 (https://tools.ietf.org/html/rfc1813).

      Procedure CREATE creates a regular file.

      Parameters:
      createMode - The instance describing how the file is to be created. UNCHECKED means that the file should be created without checking for the existence of a duplicate file in the same directory. In this case, how.obj_attributes is a sattr3 describing the initial attributes for the file. GUARDED specifies that the server should check for the presence of a duplicate file before performing the create and should fail the request with NFS3ERR_EXIST if a duplicate file exists. If the file does not exist, the request is performed as described for UNCHECKED. EXCLUSIVE specifies that the server is to follow exclusive creation semantics, using the verifier to ensure exclusive creation of the target. No attributes may be provided in this case, since the server may use the target file metadata to store the createverf3 verifier.
      parentDirectoryFileHandle - The file handle for the directory in which the file is to be created.
      name - The name that is to be associated with the created file.
      attributes - The initial attributes for the new file.
      verifier - A unique identifier to ensure exclusive creation of the new file. If no value is provided for exclusive creation, this is generated.
      credential - The credential used for RPC authentication.
      nfsVersion - The NFS version number
      Throws:
      FileNotFoundException
  • Method Details

    • marshalling

      public void marshalling(Xdr xdr)
      Writes the RPC call header and authentication credentials to the XDR buffer.
      Specified by:
      marshalling in interface NfsRequest
      Overrides:
      marshalling in class NfsRequestBase
      Parameters:
      xdr - the Xdr to be sent.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getVerifier

      public byte[] getVerifier()
      Returns a unique identifier to ensure exclusive creation of the new file. If no value was provided for exclusive creation, this was generated.