├── .assets └── nfs4j-logo.png ├── .git-blame-ignore-revs ├── .github └── workflows │ ├── build.yml │ └── release.yml ├── .gitignore ├── API-changes.md ├── Dockerfile ├── License ├── README.md ├── basic-client ├── pom.xml └── src │ └── main │ └── java │ └── org │ └── dcache │ └── nfs │ └── v4 │ └── client │ ├── FileIoDevice.java │ ├── GetDeviceListStub.java │ ├── GetdeviceinfoStub.java │ ├── LayoutgetStub.java │ ├── Main.java │ ├── Stripe.java │ ├── StripeMap.java │ └── nfs4_prot_NFS4_PROGRAM_Client.java ├── basic-server ├── pom.xml └── src │ └── main │ ├── container │ ├── Dockerfile │ └── run.sh │ ├── java │ └── org │ │ └── dcache │ │ └── nfs4j │ │ └── server │ │ ├── LocalFileSystem.java │ │ ├── Main.java │ │ └── SimpleNfsServer.java │ └── resources │ ├── exports │ ├── logback-test.xml │ └── logback.xml ├── benchmarks ├── pom.xml └── src │ └── main │ └── java │ └── org │ └── dcache │ └── nfs │ └── benchmarks │ ├── BenchmarkRunner.java │ ├── CacheBenchmark.java │ ├── ConcurrentLockManagerBenchmark.java │ ├── FileTrackerBenchmark.java │ ├── IpMatcherBenchmark.java │ └── SubjectBenchmark.java ├── core ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── dcache │ │ └── nfs │ │ ├── ChimeraNFSException.java │ │ ├── ExportFile.java │ │ ├── ExportTable.java │ │ ├── FsExport.java │ │ ├── HostEntryComparator.java │ │ ├── InetAddressMatcher.java │ │ ├── nfsstat.java │ │ ├── status │ │ ├── AccessException.java │ │ ├── AdminRevokedException.java │ │ ├── AttrNotSuppException.java │ │ ├── BackChanBusyException.java │ │ ├── BadCharException.java │ │ ├── BadCookieException.java │ │ ├── BadHandleException.java │ │ ├── BadHighSlotException.java │ │ ├── BadIoModeException.java │ │ ├── BadLayoutException.java │ │ ├── BadNameException.java │ │ ├── BadOwnerException.java │ │ ├── BadRangeException.java │ │ ├── BadSeqidException.java │ │ ├── BadSessionDigestException.java │ │ ├── BadSessionException.java │ │ ├── BadSlotException.java │ │ ├── BadStateidException.java │ │ ├── BadTypeException.java │ │ ├── BadXdrException.java │ │ ├── CbPathDownException.java │ │ ├── ClidInUseException.java │ │ ├── ClientidBusyException.java │ │ ├── CompleteAlreadyException.java │ │ ├── ConnBindingNotEnforcedException.java │ │ ├── ConnNotBoundToSessionException.java │ │ ├── DQuotException.java │ │ ├── DeadLockedException.java │ │ ├── DeadSessionException.java │ │ ├── DelayException.java │ │ ├── DelegAlreadyWantedException.java │ │ ├── DelegRevokedException.java │ │ ├── DeniedException.java │ │ ├── DirDelegUnavailException.java │ │ ├── EncrAlgUnsuppException.java │ │ ├── ExistException.java │ │ ├── ExpiredException.java │ │ ├── FBigException.java │ │ ├── FhExpiredException.java │ │ ├── FileOpenException.java │ │ ├── GraceException.java │ │ ├── HashAlgUnsuppException.java │ │ ├── InvalException.java │ │ ├── IsDirException.java │ │ ├── LayoutTryLaterException.java │ │ ├── LayoutUnavailableException.java │ │ ├── LeaseMovedException.java │ │ ├── LockNotSuppException.java │ │ ├── LockRangeException.java │ │ ├── LockedException.java │ │ ├── LocksHeldException.java │ │ ├── MLinkException.java │ │ ├── MinorVersMismatchException.java │ │ ├── MovedException.java │ │ ├── NXioException.java │ │ ├── NameTooLongException.java │ │ ├── NfsIoException.java │ │ ├── NoDevException.java │ │ ├── NoEntException.java │ │ ├── NoFileHandleException.java │ │ ├── NoGraceException.java │ │ ├── NoMatchingLayoutException.java │ │ ├── NoSpcException.java │ │ ├── NoXattrException.java │ │ ├── NotDirException.java │ │ ├── NotEmptyException.java │ │ ├── NotOnlyOpException.java │ │ ├── NotSameException.java │ │ ├── NotSuppException.java │ │ ├── NotSyncException.java │ │ ├── OffloadDeniedExeption.java │ │ ├── OffloadNoReqsException.java │ │ ├── OldStateidException.java │ │ ├── OpIllegalException.java │ │ ├── OpNotInSessionException.java │ │ ├── OpenModeException.java │ │ ├── PermException.java │ │ ├── PnfsIoHoleException.java │ │ ├── PnfsNoLayoutException.java │ │ ├── RecallConflictException.java │ │ ├── ReclaimBadException.java │ │ ├── ReclaimConflictException.java │ │ ├── RejectDelegException.java │ │ ├── RemoteException.java │ │ ├── RepTooBigException.java │ │ ├── RepTooBigToCacheException.java │ │ ├── ReqTooBigException.java │ │ ├── ResourceException.java │ │ ├── RestoreFhException.java │ │ ├── RetryUncacheRepException.java │ │ ├── ReturnConflictException.java │ │ ├── RoFsException.java │ │ ├── SameException.java │ │ ├── SeqFalseRetryException.java │ │ ├── SeqMisorderedException.java │ │ ├── SequencePosException.java │ │ ├── ServerFaultException.java │ │ ├── ShareDeniedException.java │ │ ├── StaleClientidException.java │ │ ├── StaleException.java │ │ ├── StaleStateidException.java │ │ ├── SymlinkException.java │ │ ├── TooManyOpsException.java │ │ ├── TooSmallException.java │ │ ├── UnknownLayoutTypeException.java │ │ ├── UnsafeCompoundException.java │ │ ├── WFlushException.java │ │ ├── WrongCredException.java │ │ ├── WrongSecException.java │ │ ├── WrongTypeException.java │ │ ├── XDevException.java │ │ └── XattrTooBigException.java │ │ ├── util │ │ ├── AdaptiveDelegationLogic.java │ │ ├── Cache.java │ │ ├── CacheElement.java │ │ ├── CacheEventListener.java │ │ ├── CacheMXBean.java │ │ ├── CacheMXBeanImpl.java │ │ ├── GuavaCacheMXBean.java │ │ ├── GuavaCacheMXBeanImpl.java │ │ ├── Misc.java │ │ ├── NopCacheEventListener.java │ │ ├── Opaque.java │ │ ├── SubjectHolder.java │ │ └── UnixSubjects.java │ │ ├── v3 │ │ ├── MountServer.java │ │ ├── NfsServerV3.java │ │ ├── Utils.java │ │ └── xdr │ │ │ ├── ACCESS3args.java │ │ │ ├── ACCESS3res.java │ │ │ ├── ACCESS3resfail.java │ │ │ ├── ACCESS3resok.java │ │ │ ├── COMMIT3args.java │ │ │ ├── COMMIT3res.java │ │ │ ├── COMMIT3resfail.java │ │ │ ├── COMMIT3resok.java │ │ │ ├── CREATE3args.java │ │ │ ├── CREATE3res.java │ │ │ ├── CREATE3resfail.java │ │ │ ├── CREATE3resok.java │ │ │ ├── FSINFO3args.java │ │ │ ├── FSINFO3res.java │ │ │ ├── FSINFO3resfail.java │ │ │ ├── FSINFO3resok.java │ │ │ ├── FSSTAT3args.java │ │ │ ├── FSSTAT3res.java │ │ │ ├── FSSTAT3resfail.java │ │ │ ├── FSSTAT3resok.java │ │ │ ├── GETATTR3args.java │ │ │ ├── GETATTR3res.java │ │ │ ├── GETATTR3resok.java │ │ │ ├── LINK3args.java │ │ │ ├── LINK3res.java │ │ │ ├── LINK3resfail.java │ │ │ ├── LINK3resok.java │ │ │ ├── LOOKUP3args.java │ │ │ ├── LOOKUP3res.java │ │ │ ├── LOOKUP3resfail.java │ │ │ ├── LOOKUP3resok.java │ │ │ ├── MKDIR3args.java │ │ │ ├── MKDIR3res.java │ │ │ ├── MKDIR3resfail.java │ │ │ ├── MKDIR3resok.java │ │ │ ├── MKNOD3args.java │ │ │ ├── MKNOD3res.java │ │ │ ├── MKNOD3resfail.java │ │ │ ├── MKNOD3resok.java │ │ │ ├── PATHCONF3args.java │ │ │ ├── PATHCONF3res.java │ │ │ ├── PATHCONF3resfail.java │ │ │ ├── PATHCONF3resok.java │ │ │ ├── READ3args.java │ │ │ ├── READ3res.java │ │ │ ├── READ3resfail.java │ │ │ ├── READ3resok.java │ │ │ ├── READDIR3args.java │ │ │ ├── READDIR3res.java │ │ │ ├── READDIR3resfail.java │ │ │ ├── READDIR3resok.java │ │ │ ├── READDIRPLUS3args.java │ │ │ ├── READDIRPLUS3res.java │ │ │ ├── READDIRPLUS3resfail.java │ │ │ ├── READDIRPLUS3resok.java │ │ │ ├── READLINK3args.java │ │ │ ├── READLINK3res.java │ │ │ ├── READLINK3resfail.java │ │ │ ├── READLINK3resok.java │ │ │ ├── REMOVE3args.java │ │ │ ├── REMOVE3res.java │ │ │ ├── REMOVE3resfail.java │ │ │ ├── REMOVE3resok.java │ │ │ ├── RENAME3args.java │ │ │ ├── RENAME3res.java │ │ │ ├── RENAME3resfail.java │ │ │ ├── RENAME3resok.java │ │ │ ├── RMDIR3args.java │ │ │ ├── RMDIR3res.java │ │ │ ├── RMDIR3resfail.java │ │ │ ├── RMDIR3resok.java │ │ │ ├── SETATTR3args.java │ │ │ ├── SETATTR3res.java │ │ │ ├── SETATTR3resfail.java │ │ │ ├── SETATTR3resok.java │ │ │ ├── SYMLINK3args.java │ │ │ ├── SYMLINK3res.java │ │ │ ├── SYMLINK3resfail.java │ │ │ ├── SYMLINK3resok.java │ │ │ ├── WRITE3args.java │ │ │ ├── WRITE3res.java │ │ │ ├── WRITE3resfail.java │ │ │ ├── WRITE3resok.java │ │ │ ├── cookie3.java │ │ │ ├── cookieverf3.java │ │ │ ├── count3.java │ │ │ ├── createhow3.java │ │ │ ├── createmode3.java │ │ │ ├── createverf3.java │ │ │ ├── devicedata3.java │ │ │ ├── dirlist3.java │ │ │ ├── dirlistplus3.java │ │ │ ├── diropargs3.java │ │ │ ├── dirpath.java │ │ │ ├── entry3.java │ │ │ ├── entryplus3.java │ │ │ ├── exportnode.java │ │ │ ├── exports.java │ │ │ ├── fattr3.java │ │ │ ├── fhandle2.java │ │ │ ├── fhandle3.java │ │ │ ├── fhstatus.java │ │ │ ├── fileid3.java │ │ │ ├── filename3.java │ │ │ ├── ftype3.java │ │ │ ├── gid3.java │ │ │ ├── groupnode.java │ │ │ ├── groups.java │ │ │ ├── int32.java │ │ │ ├── int64.java │ │ │ ├── mknoddata3.java │ │ │ ├── mode3.java │ │ │ ├── mount_prot.java │ │ │ ├── mount_protServerStub.java │ │ │ ├── mountbody.java │ │ │ ├── mountlist.java │ │ │ ├── mountres3.java │ │ │ ├── mountres3_ok.java │ │ │ ├── mountstat3.java │ │ │ ├── name.java │ │ │ ├── nfs3_prot.java │ │ │ ├── nfs3_protServerStub.java │ │ │ ├── nfs_fh3.java │ │ │ ├── nfspath3.java │ │ │ ├── nfstime3.java │ │ │ ├── offset3.java │ │ │ ├── post_op_attr.java │ │ │ ├── post_op_fh3.java │ │ │ ├── pre_op_attr.java │ │ │ ├── sattr3.java │ │ │ ├── sattrguard3.java │ │ │ ├── set_atime.java │ │ │ ├── set_gid3.java │ │ │ ├── set_mode3.java │ │ │ ├── set_mtime.java │ │ │ ├── set_size3.java │ │ │ ├── set_uid3.java │ │ │ ├── size3.java │ │ │ ├── specdata3.java │ │ │ ├── stable_how.java │ │ │ ├── symlinkdata3.java │ │ │ ├── time_how.java │ │ │ ├── uid3.java │ │ │ ├── uint32.java │ │ │ ├── uint64.java │ │ │ ├── wcc_attr.java │ │ │ ├── wcc_data.java │ │ │ └── writeverf3.java │ │ ├── v4 │ │ ├── AbstractNFSv4Operation.java │ │ ├── AbstractOperationExecutor.java │ │ ├── AttributeMap.java │ │ ├── BerkeleyDBClientStore.java │ │ ├── CachingIdmap.java │ │ ├── ClientCB.java │ │ ├── ClientCache.java │ │ ├── ClientRecoveryStore.java │ │ ├── ClientSession.java │ │ ├── CompoundBuilder.java │ │ ├── CompoundContext.java │ │ ├── CompoundContextBuilder.java │ │ ├── DefaultClientCache.java │ │ ├── DisposeListener.java │ │ ├── EphemeralClientRecoveryStore.java │ │ ├── FileTracker.java │ │ ├── FlexFileLayoutDriver.java │ │ ├── Layout.java │ │ ├── LayoutDriver.java │ │ ├── LocalIoOperationExecutor.java │ │ ├── MDSOperationExecutor.java │ │ ├── NFS4Client.java │ │ ├── NFS4State.java │ │ ├── NFSServerV41.java │ │ ├── NFSv41DeviceManager.java │ │ ├── NFSv41Session.java │ │ ├── NFSv4Defaults.java │ │ ├── NFSv4FileAttributes.java │ │ ├── NFSv4StateHandler.java │ │ ├── NameFilter.java │ │ ├── NfsIdMapping.java │ │ ├── NfsMdc.java │ │ ├── NfsV41FileLayoutDriver.java │ │ ├── OperationACCESS.java │ │ ├── OperationBACKCHANNEL_CTL.java │ │ ├── OperationBIND_CONN_TO_SESSION.java │ │ ├── OperationCLOSE.java │ │ ├── OperationCOMMIT.java │ │ ├── OperationCOPY.java │ │ ├── OperationCREATE.java │ │ ├── OperationCREATE_SESSION.java │ │ ├── OperationDELEGPURGE.java │ │ ├── OperationDELEGRETURN.java │ │ ├── OperationDESTROY_CLIENTID.java │ │ ├── OperationDESTROY_SESSION.java │ │ ├── OperationEXCHANGE_ID.java │ │ ├── OperationExecutor.java │ │ ├── OperationFREE_STATEID.java │ │ ├── OperationFactoryMXBean.java │ │ ├── OperationGETATTR.java │ │ ├── OperationGETDEVICEINFO.java │ │ ├── OperationGETDEVICELIST.java │ │ ├── OperationGETFH.java │ │ ├── OperationGETXATTR.java │ │ ├── OperationILLEGAL.java │ │ ├── OperationLAYOUTCOMMIT.java │ │ ├── OperationLAYOUTERROR.java │ │ ├── OperationLAYOUTGET.java │ │ ├── OperationLAYOUTRETURN.java │ │ ├── OperationLAYOUTSTATS.java │ │ ├── OperationLINK.java │ │ ├── OperationLISTXATTRS.java │ │ ├── OperationLOCK.java │ │ ├── OperationLOCKT.java │ │ ├── OperationLOCKU.java │ │ ├── OperationLOOKUP.java │ │ ├── OperationLOOKUPP.java │ │ ├── OperationNVERIFY.java │ │ ├── OperationOPEN.java │ │ ├── OperationOPENATTR.java │ │ ├── OperationOPEN_CONFIRM.java │ │ ├── OperationOPEN_DOWNGRADE.java │ │ ├── OperationPUTFH.java │ │ ├── OperationPUTPUBFH.java │ │ ├── OperationPUTROOTFH.java │ │ ├── OperationREAD.java │ │ ├── OperationREADDIR.java │ │ ├── OperationREADLINK.java │ │ ├── OperationRECLAIM_COMPLETE.java │ │ ├── OperationRELEASE_LOCKOWNER.java │ │ ├── OperationREMOVE.java │ │ ├── OperationREMOVEXATTR.java │ │ ├── OperationRENAME.java │ │ ├── OperationRENEW.java │ │ ├── OperationRESTOREFH.java │ │ ├── OperationSAVEFH.java │ │ ├── OperationSECINFO.java │ │ ├── OperationSECINFO_NO_NAME.java │ │ ├── OperationSEQUENCE.java │ │ ├── OperationSETATTR.java │ │ ├── OperationSETCLIENTID.java │ │ ├── OperationSETCLIENTID_CONFIRM.java │ │ ├── OperationSETXATTR.java │ │ ├── OperationTEST_STATEID.java │ │ ├── OperationVERIFY.java │ │ ├── OperationWANT_DELEGATION.java │ │ ├── OperationWRITE.java │ │ ├── RoundRobinStripingPattern.java │ │ ├── ServerIdProvider.java │ │ ├── SessionConnection.java │ │ ├── SessionSlot.java │ │ ├── SimpleIdMap.java │ │ ├── StateOwner.java │ │ ├── Stateids.java │ │ ├── StripingPattern.java │ │ ├── acl │ │ │ └── Acls.java │ │ ├── ds │ │ │ ├── DSOperationCOMMIT.java │ │ │ ├── DSOperationExecutor.java │ │ │ ├── DSOperationREAD.java │ │ │ └── DSOperationWRITE.java │ │ ├── ff │ │ │ ├── ff_cb_recall_any_mask.java │ │ │ ├── ff_data_server4.java │ │ │ ├── ff_device_addr4.java │ │ │ ├── ff_device_versions4.java │ │ │ ├── ff_io_latency4.java │ │ │ ├── ff_ioerr4.java │ │ │ ├── ff_iostats4.java │ │ │ ├── ff_layout4.java │ │ │ ├── ff_layouthint4.java │ │ │ ├── ff_layoutreturn4.java │ │ │ ├── ff_layoutupdate4.java │ │ │ ├── ff_mirror4.java │ │ │ ├── ff_mirrors_hint.java │ │ │ └── flex_files_prot.java │ │ ├── nfs4_prot.x │ │ ├── nlm │ │ │ ├── AbstractLockManager.java │ │ │ ├── LockDeniedException.java │ │ │ ├── LockException.java │ │ │ ├── LockManager.java │ │ │ ├── LockRangeUnavailabeException.java │ │ │ ├── NlmLock.java │ │ │ └── SimpleLm.java │ │ └── xdr │ │ │ ├── ACCESS4args.java │ │ │ ├── ACCESS4res.java │ │ │ ├── ACCESS4resok.java │ │ │ ├── ALLOCATE4args.java │ │ │ ├── ALLOCATE4res.java │ │ │ ├── BACKCHANNEL_CTL4args.java │ │ │ ├── BACKCHANNEL_CTL4res.java │ │ │ ├── BIND_CONN_TO_SESSION4args.java │ │ │ ├── BIND_CONN_TO_SESSION4res.java │ │ │ ├── BIND_CONN_TO_SESSION4resok.java │ │ │ ├── CB_COMPOUND4args.java │ │ │ ├── CB_COMPOUND4res.java │ │ │ ├── CB_GETATTR4args.java │ │ │ ├── CB_GETATTR4res.java │ │ │ ├── CB_GETATTR4resok.java │ │ │ ├── CB_ILLEGAL4res.java │ │ │ ├── CB_LAYOUTRECALL4args.java │ │ │ ├── CB_LAYOUTRECALL4res.java │ │ │ ├── CB_NOTIFY4args.java │ │ │ ├── CB_NOTIFY4res.java │ │ │ ├── CB_NOTIFY_DEVICEID4args.java │ │ │ ├── CB_NOTIFY_DEVICEID4res.java │ │ │ ├── CB_NOTIFY_LOCK4args.java │ │ │ ├── CB_NOTIFY_LOCK4res.java │ │ │ ├── CB_OFFLOAD4args.java │ │ │ ├── CB_OFFLOAD4res.java │ │ │ ├── CB_PUSH_DELEG4args.java │ │ │ ├── CB_PUSH_DELEG4res.java │ │ │ ├── CB_RECALL4args.java │ │ │ ├── CB_RECALL4res.java │ │ │ ├── CB_RECALLABLE_OBJ_AVAIL4args.java │ │ │ ├── CB_RECALLABLE_OBJ_AVAIL4res.java │ │ │ ├── CB_RECALL_ANY4args.java │ │ │ ├── CB_RECALL_ANY4res.java │ │ │ ├── CB_RECALL_SLOT4args.java │ │ │ ├── CB_RECALL_SLOT4res.java │ │ │ ├── CB_SEQUENCE4args.java │ │ │ ├── CB_SEQUENCE4res.java │ │ │ ├── CB_SEQUENCE4resok.java │ │ │ ├── CB_WANTS_CANCELLED4args.java │ │ │ ├── CB_WANTS_CANCELLED4res.java │ │ │ ├── CLONE4args.java │ │ │ ├── CLONE4res.java │ │ │ ├── CLOSE4args.java │ │ │ ├── CLOSE4res.java │ │ │ ├── COMMIT4args.java │ │ │ ├── COMMIT4res.java │ │ │ ├── COMMIT4resok.java │ │ │ ├── COMPOUND4args.java │ │ │ ├── COMPOUND4res.java │ │ │ ├── COPY4args.java │ │ │ ├── COPY4res.java │ │ │ ├── COPY4resok.java │ │ │ ├── COPY_NOTIFY4args.java │ │ │ ├── COPY_NOTIFY4res.java │ │ │ ├── COPY_NOTIFY4resok.java │ │ │ ├── CREATE4args.java │ │ │ ├── CREATE4res.java │ │ │ ├── CREATE4resok.java │ │ │ ├── CREATE_SESSION4args.java │ │ │ ├── CREATE_SESSION4res.java │ │ │ ├── CREATE_SESSION4resok.java │ │ │ ├── DEALLOCATE4args.java │ │ │ ├── DEALLOCATE4res.java │ │ │ ├── DELEGPURGE4args.java │ │ │ ├── DELEGPURGE4res.java │ │ │ ├── DELEGRETURN4args.java │ │ │ ├── DELEGRETURN4res.java │ │ │ ├── DESTROY_CLIENTID4args.java │ │ │ ├── DESTROY_CLIENTID4res.java │ │ │ ├── DESTROY_SESSION4args.java │ │ │ ├── DESTROY_SESSION4res.java │ │ │ ├── EXCHANGE_ID4args.java │ │ │ ├── EXCHANGE_ID4res.java │ │ │ ├── EXCHANGE_ID4resok.java │ │ │ ├── FREE_STATEID4args.java │ │ │ ├── FREE_STATEID4res.java │ │ │ ├── GETATTR4args.java │ │ │ ├── GETATTR4res.java │ │ │ ├── GETATTR4resok.java │ │ │ ├── GETDEVICEINFO4args.java │ │ │ ├── GETDEVICEINFO4res.java │ │ │ ├── GETDEVICEINFO4resok.java │ │ │ ├── GETDEVICELIST4args.java │ │ │ ├── GETDEVICELIST4res.java │ │ │ ├── GETDEVICELIST4resok.java │ │ │ ├── GETFH4res.java │ │ │ ├── GETFH4resok.java │ │ │ ├── GETXATTR4args.java │ │ │ ├── GETXATTR4res.java │ │ │ ├── GET_DIR_DELEGATION4args.java │ │ │ ├── GET_DIR_DELEGATION4res.java │ │ │ ├── GET_DIR_DELEGATION4res_non_fatal.java │ │ │ ├── GET_DIR_DELEGATION4resok.java │ │ │ ├── ILLEGAL4res.java │ │ │ ├── IO_ADVISE4args.java │ │ │ ├── IO_ADVISE4res.java │ │ │ ├── IO_ADVISE4resok.java │ │ │ ├── IO_ADVISE_type4.java │ │ │ ├── LAYOUTCOMMIT4args.java │ │ │ ├── LAYOUTCOMMIT4res.java │ │ │ ├── LAYOUTCOMMIT4resok.java │ │ │ ├── LAYOUTERROR4args.java │ │ │ ├── LAYOUTERROR4res.java │ │ │ ├── LAYOUTGET4args.java │ │ │ ├── LAYOUTGET4res.java │ │ │ ├── LAYOUTGET4resok.java │ │ │ ├── LAYOUTRETURN4args.java │ │ │ ├── LAYOUTRETURN4res.java │ │ │ ├── LAYOUTSTATS4args.java │ │ │ ├── LAYOUTSTATS4res.java │ │ │ ├── LINK4args.java │ │ │ ├── LINK4res.java │ │ │ ├── LINK4resok.java │ │ │ ├── LISTXATTRS4args.java │ │ │ ├── LISTXATTRS4res.java │ │ │ ├── LISTXATTRS4resok.java │ │ │ ├── LOCK4args.java │ │ │ ├── LOCK4denied.java │ │ │ ├── LOCK4res.java │ │ │ ├── LOCK4resok.java │ │ │ ├── LOCKT4args.java │ │ │ ├── LOCKT4res.java │ │ │ ├── LOCKU4args.java │ │ │ ├── LOCKU4res.java │ │ │ ├── LOOKUP4args.java │ │ │ ├── LOOKUP4res.java │ │ │ ├── LOOKUPP4res.java │ │ │ ├── NVERIFY4args.java │ │ │ ├── NVERIFY4res.java │ │ │ ├── OFFLOAD_CANCEL4args.java │ │ │ ├── OFFLOAD_CANCEL4res.java │ │ │ ├── OFFLOAD_STATUS4args.java │ │ │ ├── OFFLOAD_STATUS4res.java │ │ │ ├── OFFLOAD_STATUS4resok.java │ │ │ ├── OPEN4args.java │ │ │ ├── OPEN4res.java │ │ │ ├── OPEN4resok.java │ │ │ ├── OPENATTR4args.java │ │ │ ├── OPENATTR4res.java │ │ │ ├── OPEN_CONFIRM4args.java │ │ │ ├── OPEN_CONFIRM4res.java │ │ │ ├── OPEN_CONFIRM4resok.java │ │ │ ├── OPEN_DOWNGRADE4args.java │ │ │ ├── OPEN_DOWNGRADE4res.java │ │ │ ├── OPEN_DOWNGRADE4resok.java │ │ │ ├── PUTFH4args.java │ │ │ ├── PUTFH4res.java │ │ │ ├── PUTPUBFH4res.java │ │ │ ├── PUTROOTFH4res.java │ │ │ ├── READ4args.java │ │ │ ├── READ4res.java │ │ │ ├── READ4resok.java │ │ │ ├── READDIR4args.java │ │ │ ├── READDIR4res.java │ │ │ ├── READDIR4resok.java │ │ │ ├── READLINK4res.java │ │ │ ├── READLINK4resok.java │ │ │ ├── READ_PLUS4args.java │ │ │ ├── READ_PLUS4res.java │ │ │ ├── RECLAIM_COMPLETE4args.java │ │ │ ├── RECLAIM_COMPLETE4res.java │ │ │ ├── RELEASE_LOCKOWNER4args.java │ │ │ ├── RELEASE_LOCKOWNER4res.java │ │ │ ├── REMOVE4args.java │ │ │ ├── REMOVE4res.java │ │ │ ├── REMOVE4resok.java │ │ │ ├── REMOVEXATTR4args.java │ │ │ ├── REMOVEXATTR4res.java │ │ │ ├── RENAME4args.java │ │ │ ├── RENAME4res.java │ │ │ ├── RENAME4resok.java │ │ │ ├── RENEW4args.java │ │ │ ├── RENEW4res.java │ │ │ ├── RESTOREFH4res.java │ │ │ ├── SAVEFH4res.java │ │ │ ├── SECINFO4args.java │ │ │ ├── SECINFO4res.java │ │ │ ├── SECINFO4resok.java │ │ │ ├── SECINFO_NO_NAME4args.java │ │ │ ├── SECINFO_NO_NAME4res.java │ │ │ ├── SEEK4args.java │ │ │ ├── SEEK4res.java │ │ │ ├── SEQUENCE4args.java │ │ │ ├── SEQUENCE4res.java │ │ │ ├── SEQUENCE4resok.java │ │ │ ├── SETATTR4args.java │ │ │ ├── SETATTR4res.java │ │ │ ├── SETCLIENTID4args.java │ │ │ ├── SETCLIENTID4res.java │ │ │ ├── SETCLIENTID4resok.java │ │ │ ├── SETCLIENTID_CONFIRM4args.java │ │ │ ├── SETCLIENTID_CONFIRM4res.java │ │ │ ├── SETXATTR4args.java │ │ │ ├── SETXATTR4res.java │ │ │ ├── SET_SSV4args.java │ │ │ ├── SET_SSV4res.java │ │ │ ├── SET_SSV4resok.java │ │ │ ├── TEST_STATEID4args.java │ │ │ ├── TEST_STATEID4res.java │ │ │ ├── TEST_STATEID4resok.java │ │ │ ├── VERIFY4args.java │ │ │ ├── VERIFY4res.java │ │ │ ├── WANT_DELEGATION4args.java │ │ │ ├── WANT_DELEGATION4res.java │ │ │ ├── WRITE4args.java │ │ │ ├── WRITE4res.java │ │ │ ├── WRITE4resok.java │ │ │ ├── WRITE_SAME4args.java │ │ │ ├── WRITE_SAME4res.java │ │ │ ├── aceflag4.java │ │ │ ├── acemask4.java │ │ │ ├── acetype4.java │ │ │ ├── aclflag4.java │ │ │ ├── app_data_block4.java │ │ │ ├── ascii_REQUIRED4.java │ │ │ ├── attr_notice4.java │ │ │ ├── attrlist4.java │ │ │ ├── authsys_parms.java │ │ │ ├── bitmap4.java │ │ │ ├── callback_sec_parms4.java │ │ │ ├── cb_client4.java │ │ │ ├── change_attr_type4.java │ │ │ ├── change_info4.java │ │ │ ├── change_policy4.java │ │ │ ├── changeid4.java │ │ │ ├── channel_attrs4.java │ │ │ ├── channel_dir_from_client4.java │ │ │ ├── channel_dir_from_server4.java │ │ │ ├── client_owner4.java │ │ │ ├── clientaddr4.java │ │ │ ├── clientid4.java │ │ │ ├── component4.java │ │ │ ├── copy_confirm_auth_priv.java │ │ │ ├── copy_from_auth_priv.java │ │ │ ├── copy_requirements4.java │ │ │ ├── copy_to_auth_priv.java │ │ │ ├── count4.java │ │ │ ├── createhow4.java │ │ │ ├── createmode4.java │ │ │ ├── createtype4.java │ │ │ ├── creatverfattr.java │ │ │ ├── data4.java │ │ │ ├── data_content4.java │ │ │ ├── data_info4.java │ │ │ ├── deleg_claim4.java │ │ │ ├── device_addr4.java │ │ │ ├── device_error4.java │ │ │ ├── deviceid4.java │ │ │ ├── dirlist4.java │ │ │ ├── entry4.java │ │ │ ├── exist_lock_owner4.java │ │ │ ├── fattr4.java │ │ │ ├── fattr4_absent.java │ │ │ ├── fattr4_acl.java │ │ │ ├── fattr4_aclsupport.java │ │ │ ├── fattr4_archive.java │ │ │ ├── fattr4_cansettime.java │ │ │ ├── fattr4_case_insensitive.java │ │ │ ├── fattr4_case_preserving.java │ │ │ ├── fattr4_change.java │ │ │ ├── fattr4_change_attr_type.java │ │ │ ├── fattr4_change_policy.java │ │ │ ├── fattr4_chown_restricted.java │ │ │ ├── fattr4_clone_blksize.java │ │ │ ├── fattr4_dacl.java │ │ │ ├── fattr4_dir_notif_delay.java │ │ │ ├── fattr4_dirent_notif_delay.java │ │ │ ├── fattr4_fh_expire_type.java │ │ │ ├── fattr4_filehandle.java │ │ │ ├── fattr4_fileid.java │ │ │ ├── fattr4_files_avail.java │ │ │ ├── fattr4_files_free.java │ │ │ ├── fattr4_files_total.java │ │ │ ├── fattr4_fs_charset_cap.java │ │ │ ├── fattr4_fs_charset_cap4.java │ │ │ ├── fattr4_fs_layout_types.java │ │ │ ├── fattr4_fs_locations.java │ │ │ ├── fattr4_fs_locations_info.java │ │ │ ├── fattr4_fs_status.java │ │ │ ├── fattr4_fsid.java │ │ │ ├── fattr4_hidden.java │ │ │ ├── fattr4_homogeneous.java │ │ │ ├── fattr4_layout_alignment.java │ │ │ ├── fattr4_layout_blksize.java │ │ │ ├── fattr4_layout_hint.java │ │ │ ├── fattr4_layout_types.java │ │ │ ├── fattr4_lease_time.java │ │ │ ├── fattr4_link_support.java │ │ │ ├── fattr4_maxfilesize.java │ │ │ ├── fattr4_maxlink.java │ │ │ ├── fattr4_maxname.java │ │ │ ├── fattr4_maxread.java │ │ │ ├── fattr4_maxwrite.java │ │ │ ├── fattr4_mdsthreshold.java │ │ │ ├── fattr4_mimetype.java │ │ │ ├── fattr4_mode.java │ │ │ ├── fattr4_mode_set_masked.java │ │ │ ├── fattr4_mounted_on_fileid.java │ │ │ ├── fattr4_named_attr.java │ │ │ ├── fattr4_no_trunc.java │ │ │ ├── fattr4_numlinks.java │ │ │ ├── fattr4_owner.java │ │ │ ├── fattr4_owner_group.java │ │ │ ├── fattr4_quota_avail_hard.java │ │ │ ├── fattr4_quota_avail_soft.java │ │ │ ├── fattr4_quota_used.java │ │ │ ├── fattr4_rawdev.java │ │ │ ├── fattr4_rdattr_error.java │ │ │ ├── fattr4_retentevt_get.java │ │ │ ├── fattr4_retentevt_set.java │ │ │ ├── fattr4_retention_get.java │ │ │ ├── fattr4_retention_hold.java │ │ │ ├── fattr4_retention_set.java │ │ │ ├── fattr4_sacl.java │ │ │ ├── fattr4_sec_label.java │ │ │ ├── fattr4_size.java │ │ │ ├── fattr4_space_avail.java │ │ │ ├── fattr4_space_free.java │ │ │ ├── fattr4_space_freed.java │ │ │ ├── fattr4_space_total.java │ │ │ ├── fattr4_space_used.java │ │ │ ├── fattr4_suppattr_exclcreat.java │ │ │ ├── fattr4_supported_attrs.java │ │ │ ├── fattr4_symlink_support.java │ │ │ ├── fattr4_system.java │ │ │ ├── fattr4_time_access.java │ │ │ ├── fattr4_time_access_set.java │ │ │ ├── fattr4_time_backup.java │ │ │ ├── fattr4_time_create.java │ │ │ ├── fattr4_time_delta.java │ │ │ ├── fattr4_time_metadata.java │ │ │ ├── fattr4_time_modify.java │ │ │ ├── fattr4_time_modify_set.java │ │ │ ├── fattr4_type.java │ │ │ ├── fattr4_unique_handles.java │ │ │ ├── fattr4_xattr_support.java │ │ │ ├── filelayout_hint_care4.java │ │ │ ├── fs4_status.java │ │ │ ├── fs4_status_type.java │ │ │ ├── fs_charset_cap4.java │ │ │ ├── fs_location4.java │ │ │ ├── fs_locations4.java │ │ │ ├── fs_locations_info4.java │ │ │ ├── fs_locations_item4.java │ │ │ ├── fs_locations_server4.java │ │ │ ├── fsid4.java │ │ │ ├── gddrnf4_status.java │ │ │ ├── gss_cb_handles4.java │ │ │ ├── gsshandle4_t.java │ │ │ ├── int32_t.java │ │ │ ├── int64_t.java │ │ │ ├── io_info4.java │ │ │ ├── labelformat_spec4.java │ │ │ ├── layout4.java │ │ │ ├── layout_content4.java │ │ │ ├── layouthint4.java │ │ │ ├── layoutiomode4.java │ │ │ ├── layoutrecall4.java │ │ │ ├── layoutrecall_file4.java │ │ │ ├── layoutrecall_type4.java │ │ │ ├── layoutreturn4.java │ │ │ ├── layoutreturn_file4.java │ │ │ ├── layoutreturn_stateid.java │ │ │ ├── layoutreturn_type4.java │ │ │ ├── layouttype4.java │ │ │ ├── layoutupdate4.java │ │ │ ├── length4.java │ │ │ ├── limit_by4.java │ │ │ ├── linktext4.java │ │ │ ├── lock_owner4.java │ │ │ ├── locker4.java │ │ │ ├── mdsthreshold4.java │ │ │ ├── mode4.java │ │ │ ├── mode_masked4.java │ │ │ ├── multipath_list4.java │ │ │ ├── netaddr4.java │ │ │ ├── netloc4.java │ │ │ ├── netloc_type4.java │ │ │ ├── newoffset4.java │ │ │ ├── newsize4.java │ │ │ ├── newtime4.java │ │ │ ├── nfl_util4.java │ │ │ ├── nfs4_prot.java │ │ │ ├── nfs4_prot_NFS4_PROGRAM_ServerStub.java │ │ │ ├── nfs_argop4.java │ │ │ ├── nfs_cb_argop4.java │ │ │ ├── nfs_cb_opnum4.java │ │ │ ├── nfs_cb_resop4.java │ │ │ ├── nfs_client_id4.java │ │ │ ├── nfs_cookie4.java │ │ │ ├── nfs_fh4.java │ │ │ ├── nfs_ftype4.java │ │ │ ├── nfs_impl_id4.java │ │ │ ├── nfs_lease4.java │ │ │ ├── nfs_lock_type4.java │ │ │ ├── nfs_modified_limit4.java │ │ │ ├── nfs_opnum4.java │ │ │ ├── nfs_resop4.java │ │ │ ├── nfs_space_limit4.java │ │ │ ├── nfsace4.java │ │ │ ├── nfsacl41.java │ │ │ ├── nfstime4.java │ │ │ ├── nfsv4_1_file_layout4.java │ │ │ ├── nfsv4_1_file_layout_ds_addr4.java │ │ │ ├── nfsv4_1_file_layouthint4.java │ │ │ ├── notify4.java │ │ │ ├── notify_add4.java │ │ │ ├── notify_attr4.java │ │ │ ├── notify_deviceid_change4.java │ │ │ ├── notify_deviceid_delete4.java │ │ │ ├── notify_deviceid_type4.java │ │ │ ├── notify_entry4.java │ │ │ ├── notify_remove4.java │ │ │ ├── notify_rename4.java │ │ │ ├── notify_type4.java │ │ │ ├── notify_verifier4.java │ │ │ ├── notifylist4.java │ │ │ ├── offload_info4.java │ │ │ ├── offset4.java │ │ │ ├── open_claim4.java │ │ │ ├── open_claim_delegate_cur4.java │ │ │ ├── open_claim_type4.java │ │ │ ├── open_delegation4.java │ │ │ ├── open_delegation_type4.java │ │ │ ├── open_none_delegation4.java │ │ │ ├── open_owner4.java │ │ │ ├── open_read_delegation4.java │ │ │ ├── open_to_lock_owner4.java │ │ │ ├── open_write_delegation4.java │ │ │ ├── openflag4.java │ │ │ ├── opentype4.java │ │ │ ├── pathname4.java │ │ │ ├── policy4.java │ │ │ ├── prev_entry4.java │ │ │ ├── qop4.java │ │ │ ├── read_plus_content.java │ │ │ ├── read_plus_res4.java │ │ │ ├── referring_call4.java │ │ │ ├── referring_call_list4.java │ │ │ ├── retention_get4.java │ │ │ ├── retention_set4.java │ │ │ ├── rpc_gss_svc_t.java │ │ │ ├── rpcsec_gss_info.java │ │ │ ├── sec_label4.java │ │ │ ├── sec_oid4.java │ │ │ ├── secinfo4.java │ │ │ ├── secinfo_style4.java │ │ │ ├── secret4.java │ │ │ ├── seek_res4.java │ │ │ ├── seqid4.java │ │ │ ├── sequenceid4.java │ │ │ ├── server_owner4.java │ │ │ ├── sessionid4.java │ │ │ ├── settime4.java │ │ │ ├── setxattr_option4.java │ │ │ ├── slotid4.java │ │ │ ├── specdata4.java │ │ │ ├── ssa_digest_input4.java │ │ │ ├── ssr_digest_input4.java │ │ │ ├── ssv_mic_plain_tkn4.java │ │ │ ├── ssv_mic_tkn4.java │ │ │ ├── ssv_prot_info4.java │ │ │ ├── ssv_seal_cipher_tkn4.java │ │ │ ├── ssv_seal_plain_tkn4.java │ │ │ ├── ssv_sp_parms4.java │ │ │ ├── ssv_subkey4.java │ │ │ ├── stable_how4.java │ │ │ ├── state_owner4.java │ │ │ ├── state_protect4_a.java │ │ │ ├── state_protect4_r.java │ │ │ ├── state_protect_how4.java │ │ │ ├── state_protect_ops4.java │ │ │ ├── stateid4.java │ │ │ ├── threshold4_read_iosize.java │ │ │ ├── threshold4_read_size.java │ │ │ ├── threshold4_write_iosize.java │ │ │ ├── threshold4_write_size.java │ │ │ ├── threshold_item4.java │ │ │ ├── time_how4.java │ │ │ ├── uint32_t.java │ │ │ ├── uint64_t.java │ │ │ ├── utf8str_cis.java │ │ │ ├── utf8str_cs.java │ │ │ ├── utf8str_mixed.java │ │ │ ├── utf8string.java │ │ │ ├── verifier4.java │ │ │ ├── why_no_delegation4.java │ │ │ ├── write_response4.java │ │ │ └── xattrvalue4.java │ │ └── vfs │ │ ├── AclCheckable.java │ │ ├── DirectoryEntry.java │ │ ├── DirectoryStream.java │ │ ├── FileHandle.java │ │ ├── ForwardingFileSystem.java │ │ ├── FsCache.java │ │ ├── FsStat.java │ │ ├── Inode.java │ │ ├── PseudoFs.java │ │ ├── PseudoFsNode.java │ │ ├── Stat.java │ │ ├── VfsCache.java │ │ ├── VfsCacheConfig.java │ │ └── VirtualFileSystem.java │ └── test │ ├── java │ └── org │ │ └── dcache │ │ ├── nfs │ │ ├── ExportFileTest.java │ │ ├── FsExportTest.java │ │ ├── HostEntryComparatorTest.java │ │ ├── InetAddressMatcherTest.java │ │ ├── util │ │ │ ├── AdaptiveDelegationLogicTest.java │ │ │ ├── CacheTest.java │ │ │ ├── ManualClock.java │ │ │ ├── OpaqueTest.java │ │ │ └── UnixSubjectsTest.java │ │ ├── v3 │ │ │ ├── MountServerTest.java │ │ │ ├── NfsServerV3READDIRPLUS_3Test.java │ │ │ ├── NfsServerV3READDIR_3Test.java │ │ │ └── UtilsTest.java │ │ ├── v4 │ │ │ ├── AssertNFS.java │ │ │ ├── BerkeleyDBClientStoreTest.java │ │ │ ├── CompoundContextTest.java │ │ │ ├── FileTrackerTest.java │ │ │ ├── NFS4ClientTest.java │ │ │ ├── NFSv41SessionTest.java │ │ │ ├── NFSv4StateHandlerTest.java │ │ │ ├── NameFilterTest.java │ │ │ ├── NfsTestUtils.java │ │ │ ├── OperationCOPYTest.java │ │ │ ├── OperationCREATE_SESSIONTest.java │ │ │ ├── OperationEXCHANGE_IDTest.java │ │ │ ├── OperationGETATTRTest.java │ │ │ ├── OperationGETDEVICEINFOTest.java │ │ │ ├── OperationGETXATTRTest.java │ │ │ ├── OperationLAYOUTCOMMITTest.java │ │ │ ├── OperationLAYOUTERRORTest.java │ │ │ ├── OperationLAYOUTSTATSTest.java │ │ │ ├── OperationLISTXATTRSTest.java │ │ │ ├── OperationLOCKUTest.java │ │ │ ├── OperationOPENTest.java │ │ │ ├── OperationREADDIRTest.java │ │ │ ├── OperationREADTest.java │ │ │ ├── OperationREMOVEXATTRTest.java │ │ │ ├── OperationSECINFO_NO_NAMETest.java │ │ │ ├── OperationSETXATTRTest.java │ │ │ ├── OperationWRITETest.java │ │ │ ├── StateidsTest.java │ │ │ ├── acl │ │ │ │ └── AclsTest.java │ │ │ ├── nlm │ │ │ │ ├── NlmLockTest.java │ │ │ │ └── SimpleLmTest.java │ │ │ └── xdr │ │ │ │ ├── bitmap4Test.java │ │ │ │ ├── nfstime4Test.java │ │ │ │ ├── offset4Test.java │ │ │ │ ├── sessionid4Test.java │ │ │ │ └── stateid4Test.java │ │ └── vfs │ │ │ ├── DirectoryStreamTest.java │ │ │ ├── DummyVFS.java │ │ │ ├── FileHandleTest.java │ │ │ ├── FsStatTest.java │ │ │ ├── PseudoFsTest.java │ │ │ ├── StatTest.java │ │ │ └── VfsCacheTest.java │ │ └── testutils │ │ ├── AssertXdr.java │ │ ├── InetAddressBuilder.java │ │ ├── NfsV3Ops.java │ │ ├── RpcCallBuilder.java │ │ └── XdrHelper.java │ └── resources │ └── org │ └── dcache │ └── nfs │ ├── exports │ ├── exports.krb │ ├── exports.mix │ ├── exports.sys │ ├── exports.unsorted │ └── v3 │ └── simpleExports ├── dlm ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── dcache │ │ └── nfs │ │ └── v4 │ │ └── nlm │ │ └── DistributedLockManager.java │ └── test │ ├── java │ └── org │ │ └── dcache │ │ └── nfs │ │ └── v4 │ │ └── nlm │ │ └── DistributedLockManagerTest.java │ └── resources │ └── hazelcast.xml ├── docs ├── nfs42_prot.x ├── nfs_xattr.x ├── rfc1831.txt ├── rfc5661.txt ├── rfc7530.txt ├── rfc7862.txt ├── rfc8276.txt └── rquota.x ├── full-test.yml ├── nfs4j-formatter.xml ├── pom.xml ├── rquota ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── dcache │ │ └── rquota │ │ ├── QuotaSvc.java │ │ ├── QuotaVfs.java │ │ └── xdr │ │ ├── ext_getquota_args.java │ │ ├── ext_setquota_args.java │ │ ├── getquota_args.java │ │ ├── getquota_rslt.java │ │ ├── qr_status.java │ │ ├── rquota.java │ │ ├── rquota.java~ │ │ ├── rquotaServerStub.java │ │ ├── setquota_args.java │ │ ├── setquota_rslt.java │ │ └── sq_dqblk.java │ └── test │ └── java │ └── org │ └── dcache │ └── rquota │ └── QuotaSvcTest.java ├── scripts └── reformat-code.sh ├── spotbugs-exclude.xml └── spring ├── pom.xml └── src └── main └── java └── org └── dcache └── nfs └── v4 └── NFSServerV41Factory.java /.assets/nfs4j-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dCache/nfs4j/01eea28a04f756e947e710c0f5cf5662ce3f3824/.assets/nfs4j-logo.png -------------------------------------------------------------------------------- /.git-blame-ignore-revs: -------------------------------------------------------------------------------- 1 | # This file contains a list of commits that should be ignored by `git blame` command. 2 | # 3 | # $ git config blame.ignoreRevsFile .git-blame-ignore-revs 4 | 5 | # core reformat on 2025-06-16 6 | 97b693c920b37f903e6f736f84999b54f2470d2c 7 | 8 | -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: Build and Test 2 | 3 | on: 4 | push: 5 | pull_request: 6 | types: [opened, reopened] 7 | 8 | jobs: 9 | build: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v4 13 | - name: Set up JDK 17 14 | uses: actions/setup-java@v4 15 | with: 16 | java-version: "17" 17 | distribution: "temurin" 18 | cache: maven 19 | - name: Build with Maven 20 | run: mvn --batch-mode --update-snapshots package 21 | 22 | - name: JUnit test report 23 | uses: mikepenz/action-junit-report@v5 24 | if: always() 25 | with: 26 | check_name: junit test report 27 | report_paths: "**/target/surefire-reports/*.xml" 28 | 29 | - name: Run pynfs tests in container 30 | id: tester 31 | run: COMPOSE_DOCKER_CLI_BUILD=1 DOCKER_BUILDKIT=1 docker compose -f full-test.yml up --build --quiet-pull --exit-code-from tester 32 | 33 | - name: Pynfs Test Report 34 | uses: mikepenz/action-junit-report@v5 35 | if: always() 36 | with: 37 | check_name: pynfs protocol compatibility test 38 | report_paths: "report/*.xml" 39 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | # 2 | # Auto-publish release on tag to trigger zenodo DOI generation 3 | # 4 | name: Releases 5 | 6 | on: 7 | push: 8 | tags: 9 | - '*' 10 | 11 | jobs: 12 | 13 | build: 14 | runs-on: ubuntu-latest 15 | permissions: 16 | contents: write 17 | steps: 18 | - uses: actions/checkout@v3 19 | - uses: ncipollo/release-action@v1 20 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | .idea 3 | *.iml 4 | .project 5 | .settings 6 | .classpath 7 | .factorypath 8 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM almalinux/9-minimal 2 | 3 | RUN microdnf install -y java-21-openjdk-headless && \ 4 | microdnf clean all && \ 5 | rm -rf /var/cache/yum 6 | 7 | RUN mkdir /nfs4j 8 | COPY basic-server/target/basic-server.jar /nfs4j/basic-server.jar 9 | 10 | 11 | CMD ["java", "-jar", "/nfs4j/basic-server.jar"] -------------------------------------------------------------------------------- /basic-server/src/main/container/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM almalinux:9-minimal as builder 2 | 3 | # Add JRE 4 | RUN microdnf -y install java-17-openjdk-devel java-17-openjdk-jmods binutils 5 | RUN jlink -v --compress=2 --strip-debug --no-header-files --no-man-pages --add-modules java.base,java.compiler,java.instrument,java.logging,java.management,java.naming,java.security.jgss,java.transaction.xa,java.xml,jdk.jfr,jdk.security.auth,jdk.unsupported --output /jlink-runtime 6 | 7 | 8 | FROM almalinux:9-minimal 9 | COPY --from=builder /jlink-runtime /jlink-runtime 10 | 11 | # add external files into container at the build time 12 | COPY run.sh /run.sh 13 | RUN chmod +x /run.sh 14 | 15 | # where we store the data 16 | RUN mkdir -p /usr/share/nfs4j 17 | 18 | # Add JARS 19 | COPY maven /usr/share/nfs4j/jars 20 | 21 | 22 | # Post-install brutal cleanup 23 | RUN microdnf clean all && rm -rf /var/cache/yum /var/lib/dnf /var/lib/rpm 24 | 25 | # expose TCP ports for network services 26 | EXPOSE 2049 27 | 28 | # by default we start server 29 | CMD ["/run.sh"] 30 | -------------------------------------------------------------------------------- /basic-server/src/main/container/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | exec /jlink-runtime/bin/java \ 4 | ${JAVA_OPT} ${JMX} ${JAVA_ARGS} \ 5 | -cp "/usr/share/nfs4j/jars/*" org.dcache.nfs4j.server.Main "$@" 6 | -------------------------------------------------------------------------------- /basic-server/src/main/resources/exports: -------------------------------------------------------------------------------- 1 | #/data *(refer=/exports/data@dcache-lab007) 2 | /data *(rw,no_root_squash) -------------------------------------------------------------------------------- /basic-server/src/main/resources/logback-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{yyyy-MM-dd HH:mm:ss.SSS} [%X{mdc.client}] [%thread] %highlight(%-5level) %cyan(%logger{15}) - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /basic-server/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%X{mdc.client}] [%thread] %highlight(%-5level) %cyan(%logger{15}) - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /benchmarks/src/main/java/org/dcache/nfs/benchmarks/BenchmarkRunner.java: -------------------------------------------------------------------------------- 1 | package org.dcache.nfs.benchmarks; 2 | 3 | import org.openjdk.jmh.results.format.ResultFormatType; 4 | import org.openjdk.jmh.runner.Runner; 5 | import org.openjdk.jmh.runner.RunnerException; 6 | import org.openjdk.jmh.runner.options.Options; 7 | import org.openjdk.jmh.runner.options.OptionsBuilder; 8 | 9 | /** 10 | * 11 | */ 12 | public class BenchmarkRunner { 13 | 14 | public static void main(String[] args) throws RunnerException { 15 | Options opt = new OptionsBuilder() 16 | .include(ConcurrentLockManagerBenchmark.class.getSimpleName()) 17 | .include(IpMatcherBenchmark.class.getSimpleName()) 18 | .resultFormat(ResultFormatType.JSON) 19 | .build(); 20 | 21 | new Runner(opt).run(); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /benchmarks/src/main/java/org/dcache/nfs/benchmarks/IpMatcherBenchmark.java: -------------------------------------------------------------------------------- 1 | package org.dcache.nfs.benchmarks; 2 | 3 | import java.net.InetAddress; 4 | import java.net.UnknownHostException; 5 | 6 | import org.dcache.nfs.InetAddressMatcher; 7 | import org.openjdk.jmh.annotations.Benchmark; 8 | import org.openjdk.jmh.annotations.BenchmarkMode; 9 | import org.openjdk.jmh.annotations.Mode; 10 | import org.openjdk.jmh.annotations.Param; 11 | import org.openjdk.jmh.annotations.Scope; 12 | import org.openjdk.jmh.annotations.Setup; 13 | import org.openjdk.jmh.annotations.State; 14 | 15 | import com.google.common.net.InetAddresses; 16 | 17 | /** 18 | * 19 | */ 20 | @State(Scope.Thread) 21 | @BenchmarkMode(Mode.Throughput) 22 | public class IpMatcherBenchmark { 23 | 24 | private InetAddressMatcher addressMatcher; 25 | private InetAddress address; 26 | 27 | @Param({"192.168.1.1", "192.168.1.0/24", "fe80::9cef:10f5:f2ae:1aa1", "fe80::9cef:10f5:f2ae:1aa1/48"}) 28 | private String template; 29 | 30 | @Param({"192.168.1.1", "192.168.5.1", "fe80::9cef:10f5:f2ae:1aa1", "fe80:cd00:0:cde:1257:0:211e:729c"}) 31 | private String client; 32 | 33 | @Setup 34 | public void setUp() throws UnknownHostException { 35 | addressMatcher = InetAddressMatcher.forPattern(template); 36 | address = InetAddresses.forString(client); 37 | } 38 | 39 | @Benchmark 40 | public boolean benchmark() { 41 | return addressMatcher.match(address); 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/AccessException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class AccessException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -4616132827980752787L; 29 | 30 | public AccessException() { 31 | super(NFSERR_ACCESS); 32 | } 33 | 34 | public AccessException(String msg) { 35 | super(NFSERR_ACCESS, msg); 36 | } 37 | 38 | public AccessException(String msg, Throwable cause) { 39 | super(NFSERR_ACCESS, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/BadCharException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class BadCharException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 4169827451302712187L; 29 | 30 | public BadCharException() { 31 | super(NFSERR_BADCHAR); 32 | } 33 | 34 | public BadCharException(String msg) { 35 | super(NFSERR_BADCHAR, msg); 36 | } 37 | 38 | public BadCharException(String msg, Throwable cause) { 39 | super(NFSERR_BADCHAR, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/BadNameException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class BadNameException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 3476649686169780140L; 29 | 30 | public BadNameException() { 31 | super(NFSERR_BADNAME); 32 | } 33 | 34 | public BadNameException(String msg) { 35 | super(NFSERR_BADNAME, msg); 36 | } 37 | 38 | public BadNameException(String msg, Throwable cause) { 39 | super(NFSERR_BADNAME, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/BadSlotException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class BadSlotException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -7660031187268877691L; 29 | 30 | public BadSlotException() { 31 | super(NFSERR_BADSLOT); 32 | } 33 | 34 | public BadSlotException(String msg) { 35 | super(NFSERR_BADSLOT, msg); 36 | } 37 | 38 | public BadSlotException(String msg, Throwable cause) { 39 | super(NFSERR_BADSLOT, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/BadTypeException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class BadTypeException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 2321756868297073718L; 29 | 30 | public BadTypeException() { 31 | super(NFSERR_BADTYPE); 32 | } 33 | 34 | public BadTypeException(String msg) { 35 | super(NFSERR_BADTYPE, msg); 36 | } 37 | 38 | public BadTypeException(String msg, Throwable cause) { 39 | super(NFSERR_BADTYPE, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/BadXdrException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class BadXdrException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 6323567500585253004L; 29 | 30 | public BadXdrException() { 31 | super(NFSERR_BADXDR); 32 | } 33 | 34 | public BadXdrException(String msg) { 35 | super(NFSERR_BADXDR, msg); 36 | } 37 | 38 | public BadXdrException(String msg, Throwable cause) { 39 | super(NFSERR_BADXDR, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/DQuotException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class DQuotException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 9137851729606748781L; 29 | 30 | public DQuotException() { 31 | super(NFSERR_DQUOT); 32 | } 33 | 34 | public DQuotException(String msg) { 35 | super(NFSERR_DQUOT, msg); 36 | } 37 | 38 | public DQuotException(String msg, Throwable cause) { 39 | super(NFSERR_DQUOT, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/DelayException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class DelayException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -2066124328946284195L; 29 | 30 | public DelayException() { 31 | super(NFSERR_DELAY); 32 | } 33 | 34 | public DelayException(String msg) { 35 | super(NFSERR_DELAY, msg); 36 | } 37 | 38 | public DelayException(String msg, Throwable cause) { 39 | super(NFSERR_DELAY, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/DeniedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class DeniedException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -7110628957802033164L; 29 | 30 | public DeniedException() { 31 | super(NFSERR_DENIED); 32 | } 33 | 34 | public DeniedException(String msg) { 35 | super(NFSERR_DENIED, msg); 36 | } 37 | 38 | public DeniedException(String msg, Throwable cause) { 39 | super(NFSERR_DENIED, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/ExistException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class ExistException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -3836636434438056542L; 29 | 30 | public ExistException() { 31 | super(NFSERR_EXIST); 32 | } 33 | 34 | public ExistException(String msg) { 35 | super(NFSERR_EXIST, msg); 36 | } 37 | 38 | public ExistException(String msg, Throwable cause) { 39 | super(NFSERR_EXIST, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/ExpiredException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class ExpiredException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -3295936214391411029L; 29 | 30 | public ExpiredException() { 31 | super(NFSERR_EXPIRED); 32 | } 33 | 34 | public ExpiredException(String msg) { 35 | super(NFSERR_EXPIRED, msg); 36 | } 37 | 38 | public ExpiredException(String msg, Throwable cause) { 39 | super(NFSERR_EXPIRED, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/FBigException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class FBigException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 924577968515290156L; 29 | 30 | public FBigException() { 31 | super(NFSERR_FBIG); 32 | } 33 | 34 | public FBigException(String msg) { 35 | super(NFSERR_FBIG, msg); 36 | } 37 | 38 | public FBigException(String msg, Throwable cause) { 39 | super(NFSERR_FBIG, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/GraceException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class GraceException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -5823626755300883759L; 29 | 30 | public GraceException() { 31 | super(NFSERR_GRACE); 32 | } 33 | 34 | public GraceException(String msg) { 35 | super(NFSERR_GRACE, msg); 36 | } 37 | 38 | public GraceException(String msg, Throwable cause) { 39 | super(NFSERR_GRACE, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/InvalException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class InvalException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 8851250495732095581L; 29 | 30 | public InvalException() { 31 | super(NFSERR_INVAL); 32 | } 33 | 34 | public InvalException(String msg) { 35 | super(NFSERR_INVAL, msg); 36 | } 37 | 38 | public InvalException(String msg, Throwable cause) { 39 | super(NFSERR_INVAL, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/IsDirException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class IsDirException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -3065960669635559365L; 29 | 30 | public IsDirException() { 31 | super(NFSERR_ISDIR); 32 | } 33 | 34 | public IsDirException(String msg) { 35 | super(NFSERR_ISDIR, msg); 36 | } 37 | 38 | public IsDirException(String msg, Throwable cause) { 39 | super(NFSERR_ISDIR, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/LockedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class LockedException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 2260546347291735559L; 29 | 30 | public LockedException() { 31 | super(NFSERR_LOCKED); 32 | } 33 | 34 | public LockedException(String msg) { 35 | super(NFSERR_LOCKED, msg); 36 | } 37 | 38 | public LockedException(String msg, Throwable cause) { 39 | super(NFSERR_LOCKED, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/MLinkException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class MLinkException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 5652039412558398889L; 29 | 30 | public MLinkException() { 31 | super(NFSERR_MLINK); 32 | } 33 | 34 | public MLinkException(String msg) { 35 | super(NFSERR_MLINK, msg); 36 | } 37 | 38 | public MLinkException(String msg, Throwable cause) { 39 | super(NFSERR_MLINK, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/MovedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class MovedException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 5874284104396520381L; 29 | 30 | public MovedException() { 31 | super(NFSERR_MOVED); 32 | } 33 | 34 | public MovedException(String msg) { 35 | super(NFSERR_MOVED, msg); 36 | } 37 | 38 | public MovedException(String msg, Throwable cause) { 39 | super(NFSERR_MOVED, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NXioException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NXioException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -8624266035278321844L; 29 | 30 | public NXioException() { 31 | super(NFSERR_NXIO); 32 | } 33 | 34 | public NXioException(String msg) { 35 | super(NFSERR_NXIO, msg); 36 | } 37 | 38 | public NXioException(String msg, Throwable cause) { 39 | super(NFSERR_NXIO, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NfsIoException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NfsIoException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -6481588826980234406L; 29 | 30 | public NfsIoException() { 31 | super(NFSERR_IO); 32 | } 33 | 34 | public NfsIoException(String msg) { 35 | super(NFSERR_IO, msg); 36 | } 37 | 38 | public NfsIoException(String msg, Throwable cause) { 39 | super(NFSERR_IO, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NoDevException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NoDevException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -4797711449158561476L; 29 | 30 | public NoDevException() { 31 | super(NFSERR_NODEV); 32 | } 33 | 34 | public NoDevException(String msg) { 35 | super(NFSERR_NODEV, msg); 36 | } 37 | 38 | public NoDevException(String msg, Throwable cause) { 39 | super(NFSERR_NODEV, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NoEntException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NoEntException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -815130468879524733L; 29 | 30 | public NoEntException() { 31 | super(NFSERR_NOENT); 32 | } 33 | 34 | public NoEntException(String msg) { 35 | super(NFSERR_NOENT, msg); 36 | } 37 | 38 | public NoEntException(String msg, Throwable cause) { 39 | super(NFSERR_NOENT, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NoGraceException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NoGraceException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 3658783749033554403L; 29 | 30 | public NoGraceException() { 31 | super(NFSERR_NO_GRACE); 32 | } 33 | 34 | public NoGraceException(String msg) { 35 | super(NFSERR_NO_GRACE, msg); 36 | } 37 | 38 | public NoGraceException(String msg, Throwable cause) { 39 | super(NFSERR_NO_GRACE, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NoSpcException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NoSpcException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -9097452450186881188L; 29 | 30 | public NoSpcException() { 31 | super(NFSERR_NOSPC); 32 | } 33 | 34 | public NoSpcException(String msg) { 35 | super(NFSERR_NOSPC, msg); 36 | } 37 | 38 | public NoSpcException(String msg, Throwable cause) { 39 | super(NFSERR_NOSPC, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NoXattrException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NoXattrException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 4870445562399804190L; 29 | 30 | public NoXattrException() { 31 | super(NFSERR_NOXATTR); 32 | } 33 | 34 | public NoXattrException(String msg) { 35 | super(NFSERR_NOXATTR, msg); 36 | } 37 | 38 | public NoXattrException(String msg, Throwable cause) { 39 | super(NFSERR_NOXATTR, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NotDirException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NotDirException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -3254804191103472888L; 29 | 30 | public NotDirException() { 31 | super(NFSERR_NOTDIR); 32 | } 33 | 34 | public NotDirException(String msg) { 35 | super(NFSERR_NOTDIR, msg); 36 | } 37 | 38 | public NotDirException(String msg, Throwable cause) { 39 | super(NFSERR_NOTDIR, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NotOnlyOpException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NotOnlyOpException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 1L; 29 | 30 | public NotOnlyOpException() { 31 | super(NFSERR_NOT_ONLY_OP); 32 | } 33 | 34 | public NotOnlyOpException(String msg) { 35 | super(NFSERR_NOT_ONLY_OP, msg); 36 | } 37 | 38 | public NotOnlyOpException(String msg, Throwable cause) { 39 | super(NFSERR_NOT_ONLY_OP, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NotSameException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NotSameException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 1L; 29 | 30 | public NotSameException() { 31 | super(NFSERR_NOT_SAME); 32 | } 33 | 34 | public NotSameException(String msg) { 35 | super(NFSERR_NOT_SAME, msg); 36 | } 37 | 38 | public NotSameException(String msg, Throwable cause) { 39 | super(NFSERR_NOT_SAME, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NotSuppException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NotSuppException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -5155777556961174036L; 29 | 30 | public NotSuppException() { 31 | super(NFSERR_NOTSUPP); 32 | } 33 | 34 | public NotSuppException(String msg) { 35 | super(NFSERR_NOTSUPP, msg); 36 | } 37 | 38 | public NotSuppException(String msg, Throwable cause) { 39 | super(NFSERR_NOTSUPP, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/NotSyncException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class NotSyncException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 1L; 29 | 30 | public NotSyncException() { 31 | super(NFSERR_NOT_SYNC); 32 | } 33 | 34 | public NotSyncException(String msg) { 35 | super(NFSERR_NOT_SYNC, msg); 36 | } 37 | 38 | public NotSyncException(String msg, Throwable cause) { 39 | super(NFSERR_NOT_SYNC, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/PermException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class PermException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -6044963044451925340L; 29 | 30 | public PermException() { 31 | super(NFSERR_PERM); 32 | } 33 | 34 | public PermException(String msg) { 35 | super(NFSERR_PERM, msg); 36 | } 37 | 38 | public PermException(String msg, Throwable cause) { 39 | super(NFSERR_PERM, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/RemoteException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class RemoteException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 5028692178401913045L; 29 | 30 | public RemoteException() { 31 | super(NFSERR_REMOTE); 32 | } 33 | 34 | public RemoteException(String msg) { 35 | super(NFSERR_REMOTE, msg); 36 | } 37 | 38 | public RemoteException(String msg, Throwable cause) { 39 | super(NFSERR_REMOTE, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/RoFsException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class RoFsException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -8038522399187465504L; 29 | 30 | public RoFsException() { 31 | super(NFSERR_ROFS); 32 | } 33 | 34 | public RoFsException(String msg) { 35 | super(NFSERR_ROFS, msg); 36 | } 37 | 38 | public RoFsException(String msg, Throwable cause) { 39 | super(NFSERR_ROFS, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/SameException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class SameException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 3786284177222607823L; 29 | 30 | public SameException() { 31 | super(NFSERR_SAME); 32 | } 33 | 34 | public SameException(String msg) { 35 | super(NFSERR_SAME, msg); 36 | } 37 | 38 | public SameException(String msg, Throwable cause) { 39 | super(NFSERR_SAME, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/StaleException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class StaleException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 3640367711843591161L; 29 | 30 | public StaleException() { 31 | super(NFSERR_STALE); 32 | } 33 | 34 | public StaleException(String msg) { 35 | super(NFSERR_STALE, msg); 36 | } 37 | 38 | public StaleException(String msg, Throwable cause) { 39 | super(NFSERR_STALE, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/SymlinkException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class SymlinkException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 2322705674188300279L; 29 | 30 | public SymlinkException() { 31 | super(NFSERR_SYMLINK); 32 | } 33 | 34 | public SymlinkException(String msg) { 35 | super(NFSERR_SYMLINK, msg); 36 | } 37 | 38 | public SymlinkException(String msg, Throwable cause) { 39 | super(NFSERR_SYMLINK, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/WFlushException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class WFlushException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = -3360881646189310353L; 29 | 30 | public WFlushException() { 31 | super(NFSERR_WFLUSH); 32 | } 33 | 34 | public WFlushException(String msg) { 35 | super(NFSERR_WFLUSH, msg); 36 | } 37 | 38 | public WFlushException(String msg, Throwable cause) { 39 | super(NFSERR_WFLUSH, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/status/XDevException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.status; 21 | 22 | import static org.dcache.nfs.nfsstat.*; 23 | 24 | import org.dcache.nfs.ChimeraNFSException; 25 | 26 | public class XDevException extends ChimeraNFSException { 27 | 28 | private static final long serialVersionUID = 6885439621303207244L; 29 | 30 | public XDevException() { 31 | super(NFSERR_XDEV); 32 | } 33 | 34 | public XDevException(String msg) { 35 | super(NFSERR_XDEV, msg); 36 | } 37 | 38 | public XDevException(String msg, Throwable cause) { 39 | super(NFSERR_XDEV, msg, cause); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/util/CacheMXBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2020 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.util; 21 | 22 | /** 23 | * Interface CacheMXBeanImplMXBean 24 | * 25 | */ 26 | public interface CacheMXBean { 27 | 28 | void clear(); 29 | 30 | long getEntryIdleTime(); 31 | 32 | long getEntryLiveTime(); 33 | 34 | int getSize(); 35 | 36 | String[] getEntries(); 37 | 38 | long getLastClean(); 39 | } 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/util/NopCacheEventListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2020 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.util; 21 | 22 | /** 23 | * NOP implementation of {@link CacheEventListener}. 24 | * 25 | * @param 26 | */ 27 | public class NopCacheEventListener implements CacheEventListener { 28 | 29 | public void notifyPut(Cache cache, V v) { 30 | } 31 | 32 | public void notifyGet(Cache cache, V v) { 33 | } 34 | 35 | public void notifyRemove(Cache cache, V v) { 36 | } 37 | 38 | public void notifyExpired(Cache cache, V v) { 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v3/xdr/createmode3.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v3.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface createmode3 { 26 | 27 | public static final int UNCHECKED = 0; 28 | public static final int GUARDED = 1; 29 | public static final int EXCLUSIVE = 2; 30 | 31 | } 32 | // End of createmode3.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v3/xdr/ftype3.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v3.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface ftype3 { 26 | 27 | public static final int NF3REG = 1; 28 | public static final int NF3DIR = 2; 29 | public static final int NF3BLK = 3; 30 | public static final int NF3CHR = 4; 31 | public static final int NF3LNK = 5; 32 | public static final int NF3SOCK = 6; 33 | public static final int NF3FIFO = 7; 34 | 35 | } 36 | // End of ftype3.java 37 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v3/xdr/stable_how.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v3.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface stable_how { 26 | 27 | public static final int UNSTABLE = 0; 28 | public static final int DATA_SYNC = 1; 29 | public static final int FILE_SYNC = 2; 30 | 31 | } 32 | // End of stable_how.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v3/xdr/time_how.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v3.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface time_how { 26 | 27 | public static final int DONT_CHANGE = 0; 28 | public static final int SET_TO_SERVER_TIME = 1; 29 | public static final int SET_TO_CLIENT_TIME = 2; 30 | 31 | } 32 | // End of time_how.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/DisposeListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2025 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4; 21 | 22 | import org.dcache.nfs.ChimeraNFSException; 23 | 24 | /** 25 | * Should be implemented by an object that wants to receive dispose notifications. 26 | */ 27 | public interface DisposeListener { 28 | 29 | /** 30 | * Called when attached object is disposed. 31 | * 32 | * @param attachment disposed object 33 | * @throws ChimeraNFSException on errors. 34 | */ 35 | void notifyDisposed(T attachment) throws ChimeraNFSException; 36 | } 37 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/NfsMdc.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4; 21 | 22 | public interface NfsMdc { 23 | static final String CLIENT = "mdc.client"; 24 | static final String TAG = "mdc.tag"; 25 | static final String SESSION = "mdc.session"; 26 | } 27 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/RoundRobinStripingPattern.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4; 21 | 22 | import org.dcache.nfs.v4.xdr.uint32_t; 23 | 24 | /** 25 | * An implementation of {@link StripingPattern} with round-robin algorithm. 26 | */ 27 | public class RoundRobinStripingPattern implements StripingPattern { 28 | 29 | @Override 30 | public uint32_t[] getPattern(T[] data) { 31 | uint32_t[] stripeIndices = new uint32_t[data.length]; 32 | for (int i = 0; i < data.length; i++) { 33 | stripeIndices[i] = new uint32_t(i); 34 | } 35 | return stripeIndices; 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/SessionConnection.java: -------------------------------------------------------------------------------- 1 | package org.dcache.nfs.v4; 2 | 3 | import java.net.InetSocketAddress; 4 | import java.util.Objects; 5 | 6 | /** 7 | * An abstraction to represent NFSv4.1 session connection 8 | */ 9 | public class SessionConnection { 10 | 11 | private final InetSocketAddress _local; 12 | private final InetSocketAddress _remote; 13 | 14 | public SessionConnection(InetSocketAddress local, InetSocketAddress remote) { 15 | _local = local; 16 | _remote = remote; 17 | } 18 | 19 | @Override 20 | public int hashCode() { 21 | return Objects.hash(_local, _remote); 22 | } 23 | 24 | @Override 25 | public boolean equals(Object obj) { 26 | if (obj == null) { 27 | return false; 28 | } 29 | if (getClass() != obj.getClass()) { 30 | return false; 31 | } 32 | final SessionConnection other = (SessionConnection) obj; 33 | return Objects.equals(_local, other._local) && Objects.equals(_remote, other._remote); 34 | } 35 | 36 | public InetSocketAddress getLocalConnection() { 37 | return _local; 38 | } 39 | 40 | public InetSocketAddress getRemoteConnection() { 41 | return _remote; 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/ff/ff_cb_recall_any_mask.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 1/8/15 10:21 AM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.ff; 10 | 11 | /** 12 | * Enumeration (collection of constants). 13 | */ 14 | public interface ff_cb_recall_any_mask { 15 | 16 | public static final int FF_RCA4_TYPE_MASK_READ = -2; 17 | public static final int FF_RCA4_TYPE_MASK_RW = -1; 18 | 19 | } 20 | // End of ff_cb_recall_any_mask.java 21 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/ff/ff_layouthint4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 1/8/15 10:21 AM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.ff; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.OncRpcException; 14 | import org.dcache.oncrpc4j.xdr.XdrAble; 15 | import org.dcache.oncrpc4j.xdr.XdrDecodingStream; 16 | import org.dcache.oncrpc4j.xdr.XdrEncodingStream; 17 | 18 | public class ff_layouthint4 implements XdrAble { 19 | public ff_mirrors_hint fflh_mirrors_hint; 20 | 21 | public ff_layouthint4() { 22 | } 23 | 24 | public ff_layouthint4(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | fflh_mirrors_hint.xdrEncode(xdr); 32 | } 33 | 34 | public void xdrDecode(XdrDecodingStream xdr) 35 | throws OncRpcException, IOException { 36 | fflh_mirrors_hint = new ff_mirrors_hint(xdr); 37 | } 38 | 39 | } 40 | // End of ff_layouthint4.java 41 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/ff/ff_mirrors_hint.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 1/8/15 10:21 AM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.ff; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.nfs.v4.xdr.uint32_t; 14 | import org.dcache.oncrpc4j.rpc.OncRpcException; 15 | import org.dcache.oncrpc4j.xdr.XdrAble; 16 | import org.dcache.oncrpc4j.xdr.XdrDecodingStream; 17 | import org.dcache.oncrpc4j.xdr.XdrEncodingStream; 18 | 19 | public class ff_mirrors_hint implements XdrAble { 20 | public boolean ffmc_valid; 21 | public uint32_t ffmc_mirrors; 22 | 23 | public ff_mirrors_hint() { 24 | } 25 | 26 | public ff_mirrors_hint(XdrDecodingStream xdr) 27 | throws OncRpcException, IOException { 28 | xdrDecode(xdr); 29 | } 30 | 31 | public void xdrEncode(XdrEncodingStream xdr) 32 | throws OncRpcException, IOException { 33 | xdr.xdrEncodeBoolean(ffmc_valid); 34 | if (ffmc_valid == true) { 35 | ffmc_mirrors.xdrEncode(xdr); 36 | } 37 | } 38 | 39 | public void xdrDecode(XdrDecodingStream xdr) 40 | throws OncRpcException, IOException { 41 | ffmc_valid = xdr.xdrDecodeBoolean(); 42 | if (ffmc_valid == true) { 43 | ffmc_mirrors = new uint32_t(xdr); 44 | } 45 | } 46 | 47 | } 48 | // End of ff_mirrors_hint.java 49 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/nlm/LockDeniedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.nlm; 21 | 22 | /** 23 | * 24 | */ 25 | public class LockDeniedException extends LockException { 26 | 27 | private static final long serialVersionUID = 1522978305157124264L; 28 | 29 | private final NlmLock conflict; 30 | 31 | public LockDeniedException(String message, NlmLock conflict) { 32 | super(message); 33 | this.conflict = conflict; 34 | } 35 | 36 | public NlmLock getConflictingLock() { 37 | return conflict; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/nlm/LockException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.nlm; 21 | 22 | /** 23 | * 24 | */ 25 | public class LockException extends Exception { 26 | 27 | private static final long serialVersionUID = -344753028762430039L; 28 | 29 | public LockException(String message) { 30 | super(message); 31 | } 32 | 33 | public LockException(String message, Throwable cause) { 34 | super(message, cause); 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/nlm/LockRangeUnavailabeException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.nlm; 21 | 22 | /** 23 | * 24 | */ 25 | public class LockRangeUnavailabeException extends LockException { 26 | 27 | private static final long serialVersionUID = -5620829206505429656L; 28 | 29 | public LockRangeUnavailabeException(String message) { 30 | super(message); 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/ALLOCATE4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class ALLOCATE4args implements XdrAble { 18 | public stateid4 aa_stateid; 19 | public offset4 aa_offset; 20 | public length4 aa_length; 21 | 22 | public ALLOCATE4args() { 23 | } 24 | 25 | public ALLOCATE4args(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | aa_stateid.xdrEncode(xdr); 33 | aa_offset.xdrEncode(xdr); 34 | aa_length.xdrEncode(xdr); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | aa_stateid = new stateid4(xdr); 40 | aa_offset = new offset4(xdr); 41 | aa_length = new length4(xdr); 42 | } 43 | 44 | } 45 | // End of ALLOCATE4args.java 46 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/ALLOCATE4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class ALLOCATE4res implements XdrAble { 18 | public int ar_status; 19 | 20 | public ALLOCATE4res() { 21 | } 22 | 23 | public ALLOCATE4res(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdr.xdrEncodeInt(ar_status); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | ar_status = xdr.xdrDecodeInt(); 36 | } 37 | 38 | } 39 | // End of ALLOCATE4res.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/CB_OFFLOAD4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class CB_OFFLOAD4args implements XdrAble { 18 | public nfs_fh4 coa_fh; 19 | public stateid4 coa_stateid; 20 | public offload_info4 coa_offload_info; 21 | 22 | public CB_OFFLOAD4args() { 23 | } 24 | 25 | public CB_OFFLOAD4args(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | coa_fh.xdrEncode(xdr); 33 | coa_stateid.xdrEncode(xdr); 34 | coa_offload_info.xdrEncode(xdr); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | coa_fh = new nfs_fh4(xdr); 40 | coa_stateid = new stateid4(xdr); 41 | coa_offload_info = new offload_info4(xdr); 42 | } 43 | 44 | } 45 | // End of CB_OFFLOAD4args.java 46 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/CB_OFFLOAD4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class CB_OFFLOAD4res implements XdrAble { 18 | public int cor_status; 19 | 20 | public CB_OFFLOAD4res() { 21 | } 22 | 23 | public CB_OFFLOAD4res(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdr.xdrEncodeInt(cor_status); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | cor_status = xdr.xdrDecodeInt(); 36 | } 37 | 38 | } 39 | // End of CB_OFFLOAD4res.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/CLONE4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class CLONE4res implements XdrAble { 18 | public int cl_status; 19 | 20 | public CLONE4res() { 21 | } 22 | 23 | public CLONE4res(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdr.xdrEncodeInt(cl_status); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | cl_status = xdr.xdrDecodeInt(); 36 | } 37 | 38 | } 39 | // End of CLONE4res.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/COPY4resok.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class COPY4resok implements XdrAble { 18 | public write_response4 cr_response; 19 | public copy_requirements4 cr_requirements; 20 | 21 | public COPY4resok() { 22 | } 23 | 24 | public COPY4resok(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | cr_response.xdrEncode(xdr); 32 | cr_requirements.xdrEncode(xdr); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | cr_response = new write_response4(xdr); 38 | cr_requirements = new copy_requirements4(xdr); 39 | } 40 | 41 | } 42 | // End of COPY4resok.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/COPY_NOTIFY4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class COPY_NOTIFY4args implements XdrAble { 18 | public stateid4 cna_src_stateid; 19 | public netloc4 cna_destination_server; 20 | 21 | public COPY_NOTIFY4args() { 22 | } 23 | 24 | public COPY_NOTIFY4args(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | cna_src_stateid.xdrEncode(xdr); 32 | cna_destination_server.xdrEncode(xdr); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | cna_src_stateid = new stateid4(xdr); 38 | cna_destination_server = new netloc4(xdr); 39 | } 40 | 41 | } 42 | // End of COPY_NOTIFY4args.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/DEALLOCATE4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class DEALLOCATE4args implements XdrAble { 18 | public stateid4 da_stateid; 19 | public offset4 da_offset; 20 | public length4 da_length; 21 | 22 | public DEALLOCATE4args() { 23 | } 24 | 25 | public DEALLOCATE4args(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | da_stateid.xdrEncode(xdr); 33 | da_offset.xdrEncode(xdr); 34 | da_length.xdrEncode(xdr); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | da_stateid = new stateid4(xdr); 40 | da_offset = new offset4(xdr); 41 | da_length = new length4(xdr); 42 | } 43 | 44 | } 45 | // End of DEALLOCATE4args.java 46 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/DEALLOCATE4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class DEALLOCATE4res implements XdrAble { 18 | public int dr_status; 19 | 20 | public DEALLOCATE4res() { 21 | } 22 | 23 | public DEALLOCATE4res(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdr.xdrEncodeInt(dr_status); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | dr_status = xdr.xdrDecodeInt(); 36 | } 37 | 38 | } 39 | // End of DEALLOCATE4res.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/GETXATTR4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.xdr.*; 15 | 16 | public class GETXATTR4args implements XdrAble { 17 | public String gxa_name; 18 | 19 | public GETXATTR4args() { 20 | } 21 | 22 | public GETXATTR4args(XdrDecodingStream xdr) 23 | throws OncRpcException, IOException { 24 | xdrDecode(xdr); 25 | } 26 | 27 | public void xdrEncode(XdrEncodingStream xdr) 28 | throws OncRpcException, IOException { 29 | xdr.xdrEncodeString(gxa_name); 30 | } 31 | 32 | public void xdrDecode(XdrDecodingStream xdr) 33 | throws OncRpcException, IOException { 34 | gxa_name = xdr.xdrDecodeString(); 35 | } 36 | 37 | } 38 | // End of GETXATTR4args.java 39 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/GETXATTR4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.nfs.nfsstat; 14 | import org.dcache.oncrpc4j.rpc.*; 15 | import org.dcache.oncrpc4j.rpc.net.*; 16 | import org.dcache.oncrpc4j.xdr.*; 17 | 18 | public class GETXATTR4res implements XdrAble { 19 | public int gxr_status; 20 | public xattrvalue4 gxr_value; 21 | 22 | public GETXATTR4res() { 23 | } 24 | 25 | public GETXATTR4res(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | xdr.xdrEncodeInt(gxr_status); 33 | if (gxr_status == nfsstat.NFS_OK) { 34 | gxr_value.xdrEncode(xdr); 35 | } 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | gxr_status = xdr.xdrDecodeInt(); 41 | if (gxr_status == nfsstat.NFS_OK) { 42 | gxr_value = new xattrvalue4(xdr); 43 | } 44 | } 45 | 46 | } 47 | // End of GETXATTR4res.java 48 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/IO_ADVISE4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class IO_ADVISE4args implements XdrAble { 18 | public stateid4 iaa_stateid; 19 | public offset4 iaa_offset; 20 | public length4 iaa_count; 21 | public bitmap4 iaa_hints; 22 | 23 | public IO_ADVISE4args() { 24 | } 25 | 26 | public IO_ADVISE4args(XdrDecodingStream xdr) 27 | throws OncRpcException, IOException { 28 | xdrDecode(xdr); 29 | } 30 | 31 | public void xdrEncode(XdrEncodingStream xdr) 32 | throws OncRpcException, IOException { 33 | iaa_stateid.xdrEncode(xdr); 34 | iaa_offset.xdrEncode(xdr); 35 | iaa_count.xdrEncode(xdr); 36 | iaa_hints.xdrEncode(xdr); 37 | } 38 | 39 | public void xdrDecode(XdrDecodingStream xdr) 40 | throws OncRpcException, IOException { 41 | iaa_stateid = new stateid4(xdr); 42 | iaa_offset = new offset4(xdr); 43 | iaa_count = new length4(xdr); 44 | iaa_hints = new bitmap4(xdr); 45 | } 46 | 47 | } 48 | // End of IO_ADVISE4args.java 49 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/IO_ADVISE4resok.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class IO_ADVISE4resok implements XdrAble { 18 | public bitmap4 ior_hints; 19 | 20 | public IO_ADVISE4resok() { 21 | } 22 | 23 | public IO_ADVISE4resok(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | ior_hints.xdrEncode(xdr); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | ior_hints = new bitmap4(xdr); 36 | } 37 | 38 | } 39 | // End of IO_ADVISE4resok.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/IO_ADVISE_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | /** 12 | * Enumeration (collection of constants). 13 | */ 14 | public interface IO_ADVISE_type4 { 15 | 16 | public static final int IO_ADVISE4_NORMAL = 0; 17 | public static final int IO_ADVISE4_SEQUENTIAL = 1; 18 | public static final int IO_ADVISE4_SEQUENTIAL_BACKWARDS = 2; 19 | public static final int IO_ADVISE4_RANDOM = 3; 20 | public static final int IO_ADVISE4_WILLNEED = 4; 21 | public static final int IO_ADVISE4_WILLNEED_OPPORTUNISTIC = 5; 22 | public static final int IO_ADVISE4_DONTNEED = 6; 23 | public static final int IO_ADVISE4_NOREUSE = 7; 24 | public static final int IO_ADVISE4_READ = 8; 25 | public static final int IO_ADVISE4_WRITE = 9; 26 | public static final int IO_ADVISE4_INIT_PROXIMITY = 10; 27 | 28 | } 29 | // End of IO_ADVISE_type4.java 30 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/LAYOUTSTATS4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/18/19, 9:15 AM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.xdr.*; 15 | 16 | public class LAYOUTSTATS4res implements XdrAble { 17 | public int status; 18 | 19 | public LAYOUTSTATS4res() { 20 | } 21 | 22 | public LAYOUTSTATS4res(XdrDecodingStream xdr) 23 | throws OncRpcException, IOException { 24 | xdrDecode(xdr); 25 | } 26 | 27 | public void xdrEncode(XdrEncodingStream xdr) 28 | throws OncRpcException, IOException { 29 | xdr.xdrEncodeInt(status); 30 | } 31 | 32 | public void xdrDecode(XdrDecodingStream xdr) 33 | throws OncRpcException, IOException { 34 | status = xdr.xdrDecodeInt(); 35 | } 36 | 37 | } 38 | // End of LAYOUTSTATS4res.java 39 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/LISTXATTRS4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class LISTXATTRS4args implements XdrAble { 18 | public nfs_cookie4 lxa_cookie; 19 | public count4 lxa_maxcount; 20 | 21 | public LISTXATTRS4args() { 22 | } 23 | 24 | public LISTXATTRS4args(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | lxa_cookie.xdrEncode(xdr); 32 | lxa_maxcount.xdrEncode(xdr); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | lxa_cookie = new nfs_cookie4(xdr); 38 | lxa_maxcount = new count4(xdr); 39 | } 40 | 41 | } 42 | // End of LISTXATTRS4args.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/LISTXATTRS4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.nfs.nfsstat; 14 | import org.dcache.oncrpc4j.rpc.*; 15 | import org.dcache.oncrpc4j.rpc.net.*; 16 | import org.dcache.oncrpc4j.xdr.*; 17 | 18 | public class LISTXATTRS4res implements XdrAble { 19 | public int lxr_status; 20 | public LISTXATTRS4resok lxr_value; 21 | 22 | public LISTXATTRS4res() { 23 | } 24 | 25 | public LISTXATTRS4res(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | xdr.xdrEncodeInt(lxr_status); 33 | if (lxr_status == nfsstat.NFS_OK) { 34 | lxr_value.xdrEncode(xdr); 35 | } 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | lxr_status = xdr.xdrDecodeInt(); 41 | if (lxr_status == nfsstat.NFS_OK) { 42 | lxr_value = new LISTXATTRS4resok(xdr); 43 | } 44 | } 45 | 46 | } 47 | // End of LISTXATTRS4res.java 48 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/OFFLOAD_CANCEL4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class OFFLOAD_CANCEL4args implements XdrAble { 18 | public stateid4 oca_stateid; 19 | 20 | public OFFLOAD_CANCEL4args() { 21 | } 22 | 23 | public OFFLOAD_CANCEL4args(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | oca_stateid.xdrEncode(xdr); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | oca_stateid = new stateid4(xdr); 36 | } 37 | 38 | } 39 | // End of OFFLOAD_CANCEL4args.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/OFFLOAD_CANCEL4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class OFFLOAD_CANCEL4res implements XdrAble { 18 | public int ocr_status; 19 | 20 | public OFFLOAD_CANCEL4res() { 21 | } 22 | 23 | public OFFLOAD_CANCEL4res(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdr.xdrEncodeInt(ocr_status); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | ocr_status = xdr.xdrDecodeInt(); 36 | } 37 | 38 | } 39 | // End of OFFLOAD_CANCEL4res.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/OFFLOAD_STATUS4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class OFFLOAD_STATUS4args implements XdrAble { 18 | public stateid4 osa_stateid; 19 | 20 | public OFFLOAD_STATUS4args() { 21 | } 22 | 23 | public OFFLOAD_STATUS4args(XdrDecodingStream xdr) 24 | throws OncRpcException, IOException { 25 | xdrDecode(xdr); 26 | } 27 | 28 | public void xdrEncode(XdrEncodingStream xdr) 29 | throws OncRpcException, IOException { 30 | osa_stateid.xdrEncode(xdr); 31 | } 32 | 33 | public void xdrDecode(XdrDecodingStream xdr) 34 | throws OncRpcException, IOException { 35 | osa_stateid = new stateid4(xdr); 36 | } 37 | 38 | } 39 | // End of OFFLOAD_STATUS4args.java 40 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/OFFLOAD_STATUS4resok.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class OFFLOAD_STATUS4resok implements XdrAble { 18 | public length4 osr_count; 19 | public int[] osr_complete; 20 | 21 | public OFFLOAD_STATUS4resok() { 22 | } 23 | 24 | public OFFLOAD_STATUS4resok(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | osr_count.xdrEncode(xdr); 32 | xdr.xdrEncodeIntVector(osr_complete); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | osr_count = new length4(xdr); 38 | osr_complete = xdr.xdrDecodeIntVector(); 39 | } 40 | 41 | } 42 | // End of OFFLOAD_STATUS4resok.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/READ_PLUS4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class READ_PLUS4args implements XdrAble { 18 | public stateid4 rpa_stateid; 19 | public offset4 rpa_offset; 20 | public count4 rpa_count; 21 | 22 | public READ_PLUS4args() { 23 | } 24 | 25 | public READ_PLUS4args(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | rpa_stateid.xdrEncode(xdr); 33 | rpa_offset.xdrEncode(xdr); 34 | rpa_count.xdrEncode(xdr); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | rpa_stateid = new stateid4(xdr); 40 | rpa_offset = new offset4(xdr); 41 | rpa_count = new count4(xdr); 42 | } 43 | 44 | } 45 | // End of READ_PLUS4args.java 46 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/REMOVEXATTR4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.xdr.*; 15 | 16 | public class REMOVEXATTR4args implements XdrAble { 17 | public String rxa_name; 18 | 19 | public REMOVEXATTR4args() { 20 | } 21 | 22 | public REMOVEXATTR4args(XdrDecodingStream xdr) 23 | throws OncRpcException, IOException { 24 | xdrDecode(xdr); 25 | } 26 | 27 | public void xdrEncode(XdrEncodingStream xdr) 28 | throws OncRpcException, IOException { 29 | xdr.xdrEncodeString(rxa_name); 30 | } 31 | 32 | public void xdrDecode(XdrDecodingStream xdr) 33 | throws OncRpcException, IOException { 34 | rxa_name = xdr.xdrDecodeString(); 35 | } 36 | 37 | } 38 | // End of REMOVEXATTR4args.java 39 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/REMOVEXATTR4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.nfs.nfsstat; 14 | import org.dcache.oncrpc4j.rpc.*; 15 | import org.dcache.oncrpc4j.rpc.net.*; 16 | import org.dcache.oncrpc4j.xdr.*; 17 | 18 | public class REMOVEXATTR4res implements XdrAble { 19 | public int rxr_status; 20 | public change_info4 rxr_info; 21 | 22 | public REMOVEXATTR4res() { 23 | } 24 | 25 | public REMOVEXATTR4res(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | xdr.xdrEncodeInt(rxr_status); 33 | if (rxr_status == nfsstat.NFS_OK) { 34 | rxr_info.xdrEncode(xdr); 35 | } 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | rxr_status = xdr.xdrDecodeInt(); 41 | if (rxr_status == nfsstat.NFS_OK) { 42 | rxr_info = new change_info4(xdr); 43 | } 44 | } 45 | 46 | } 47 | // End of REMOVEXATTR4res.java 48 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/SEEK4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class SEEK4args implements XdrAble { 18 | public stateid4 sa_stateid; 19 | public offset4 sa_offset; 20 | public int sa_what; 21 | 22 | public SEEK4args() { 23 | } 24 | 25 | public SEEK4args(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | sa_stateid.xdrEncode(xdr); 33 | sa_offset.xdrEncode(xdr); 34 | xdr.xdrEncodeInt(sa_what); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | sa_stateid = new stateid4(xdr); 40 | sa_offset = new offset4(xdr); 41 | sa_what = xdr.xdrDecodeInt(); 42 | } 43 | 44 | } 45 | // End of SEEK4args.java 46 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/SETXATTR4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.xdr.*; 15 | 16 | public class SETXATTR4args implements XdrAble { 17 | public int sxa_option; 18 | public String sxa_name; 19 | public xattrvalue4 sxa_value; 20 | 21 | public SETXATTR4args() { 22 | } 23 | 24 | public SETXATTR4args(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | xdr.xdrEncodeInt(sxa_option); 32 | xdr.xdrEncodeString(sxa_name); 33 | sxa_value.xdrEncode(xdr); 34 | } 35 | 36 | public void xdrDecode(XdrDecodingStream xdr) 37 | throws OncRpcException, IOException { 38 | sxa_option = xdr.xdrDecodeInt(); 39 | sxa_name = xdr.xdrDecodeString(); 40 | sxa_value = new xattrvalue4(xdr); 41 | } 42 | 43 | } 44 | // End of SETXATTR4args.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/SETXATTR4res.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.nfs.nfsstat; 14 | import org.dcache.oncrpc4j.rpc.*; 15 | import org.dcache.oncrpc4j.rpc.net.*; 16 | import org.dcache.oncrpc4j.xdr.*; 17 | 18 | public class SETXATTR4res implements XdrAble { 19 | public int sxr_status; 20 | public change_info4 sxr_info; 21 | 22 | public SETXATTR4res() { 23 | } 24 | 25 | public SETXATTR4res(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | xdr.xdrEncodeInt(sxr_status); 33 | if (sxr_status == nfsstat.NFS_OK) { 34 | sxr_info.xdrEncode(xdr); 35 | } 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | sxr_status = xdr.xdrDecodeInt(); 41 | if (sxr_status == nfsstat.NFS_OK) { 42 | sxr_info = new change_info4(xdr); 43 | } 44 | } 45 | } 46 | // End of SETXATTR4res.java 47 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/WRITE_SAME4args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class WRITE_SAME4args implements XdrAble { 18 | public stateid4 wsa_stateid; 19 | public int wsa_stable; 20 | public app_data_block4 wsa_adb; 21 | 22 | public WRITE_SAME4args() { 23 | } 24 | 25 | public WRITE_SAME4args(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | wsa_stateid.xdrEncode(xdr); 33 | xdr.xdrEncodeInt(wsa_stable); 34 | wsa_adb.xdrEncode(xdr); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | wsa_stateid = new stateid4(xdr); 40 | wsa_stable = xdr.xdrDecodeInt(); 41 | wsa_adb = new app_data_block4(xdr); 42 | } 43 | 44 | } 45 | // End of WRITE_SAME4args.java 46 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/ascii_REQUIRED4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class ascii_REQUIRED4 implements XdrAble { 18 | 19 | public utf8string value; 20 | 21 | public ascii_REQUIRED4() { 22 | } 23 | 24 | public ascii_REQUIRED4(utf8string value) { 25 | this.value = value; 26 | } 27 | 28 | public ascii_REQUIRED4(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | value.xdrEncode(xdr); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = new utf8string(xdr); 41 | } 42 | 43 | } 44 | // End of ascii_REQUIRED4.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/change_attr_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | /** 12 | * Enumeration (collection of constants). 13 | */ 14 | public interface change_attr_type4 { 15 | 16 | public static final int NFS4_CHANGE_TYPE_IS_MONOTONIC_INCR = 0; 17 | public static final int NFS4_CHANGE_TYPE_IS_VERSION_COUNTER = 1; 18 | public static final int NFS4_CHANGE_TYPE_IS_VERSION_COUNTER_NOPNFS = 2; 19 | public static final int NFS4_CHANGE_TYPE_IS_TIME_METADATA = 3; 20 | public static final int NFS4_CHANGE_TYPE_IS_UNDEFINED = 4; 21 | 22 | } 23 | // End of change_attr_type4.java 24 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/channel_dir_from_client4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface channel_dir_from_client4 { 26 | 27 | public static final int CDFC4_FORE = 0x1; 28 | public static final int CDFC4_BACK = 0x2; 29 | public static final int CDFC4_FORE_OR_BOTH = 0x3; 30 | public static final int CDFC4_BACK_OR_BOTH = 0x7; 31 | 32 | } 33 | // End of channel_dir_from_client4.java 34 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/channel_dir_from_server4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface channel_dir_from_server4 { 26 | 27 | public static final int CDFS4_FORE = 0x1; 28 | public static final int CDFS4_BACK = 0x2; 29 | public static final int CDFS4_BOTH = 0x3; 30 | 31 | } 32 | // End of channel_dir_from_server4.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/copy_confirm_auth_priv.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class copy_confirm_auth_priv implements XdrAble { 18 | public byte[] ccap_shared_secret_mic; 19 | public utf8str_mixed ccap_username; 20 | 21 | public copy_confirm_auth_priv() { 22 | } 23 | 24 | public copy_confirm_auth_priv(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | xdr.xdrEncodeDynamicOpaque(ccap_shared_secret_mic); 32 | ccap_username.xdrEncode(xdr); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | ccap_shared_secret_mic = xdr.xdrDecodeDynamicOpaque(); 38 | ccap_username = new utf8str_mixed(xdr); 39 | } 40 | 41 | } 42 | // End of copy_confirm_auth_priv.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/copy_from_auth_priv.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class copy_from_auth_priv implements XdrAble { 18 | public secret4 cfap_shared_secret; 19 | public netloc4 cfap_destination; 20 | public utf8str_mixed cfap_username; 21 | 22 | public copy_from_auth_priv() { 23 | } 24 | 25 | public copy_from_auth_priv(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | cfap_shared_secret.xdrEncode(xdr); 33 | cfap_destination.xdrEncode(xdr); 34 | cfap_username.xdrEncode(xdr); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | cfap_shared_secret = new secret4(xdr); 40 | cfap_destination = new netloc4(xdr); 41 | cfap_username = new utf8str_mixed(xdr); 42 | } 43 | 44 | } 45 | // End of copy_from_auth_priv.java 46 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/copy_requirements4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class copy_requirements4 implements XdrAble { 18 | public boolean cr_consecutive; 19 | public boolean cr_synchronous; 20 | 21 | public copy_requirements4() { 22 | } 23 | 24 | public copy_requirements4(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | xdr.xdrEncodeBoolean(cr_consecutive); 32 | xdr.xdrEncodeBoolean(cr_synchronous); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | cr_consecutive = xdr.xdrDecodeBoolean(); 38 | cr_synchronous = xdr.xdrDecodeBoolean(); 39 | } 40 | 41 | } 42 | // End of copy_requirements4.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/count4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2014 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | import java.io.IOException; 23 | 24 | import org.dcache.oncrpc4j.rpc.OncRpcException; 25 | import org.dcache.oncrpc4j.xdr.XdrAble; 26 | import org.dcache.oncrpc4j.xdr.XdrDecodingStream; 27 | import org.dcache.oncrpc4j.xdr.XdrEncodingStream; 28 | 29 | public class count4 extends uint32_t { 30 | 31 | public count4() { 32 | } 33 | 34 | public count4(int value) { 35 | super(value); 36 | } 37 | 38 | public count4(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | super(xdr); 41 | } 42 | } 43 | // End of count4.java 44 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/createmode4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface createmode4 { 26 | 27 | public static final int UNCHECKED4 = 0; 28 | public static final int GUARDED4 = 1; 29 | public static final int EXCLUSIVE4 = 2; 30 | public static final int EXCLUSIVE4_1 = 3; 31 | 32 | } 33 | // End of createmode4.java 34 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/data4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class data4 implements XdrAble { 18 | public offset4 d_offset; 19 | public byte[] d_data; 20 | 21 | public data4() { 22 | } 23 | 24 | public data4(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | d_offset.xdrEncode(xdr); 32 | xdr.xdrEncodeDynamicOpaque(d_data); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | d_offset = new offset4(xdr); 38 | d_data = xdr.xdrDecodeDynamicOpaque(); 39 | } 40 | 41 | } 42 | // End of data4.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/data_content4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | /** 12 | * Enumeration (collection of constants). 13 | */ 14 | public interface data_content4 { 15 | 16 | public static final int NFS4_CONTENT_DATA = 0; 17 | public static final int NFS4_CONTENT_HOLE = 1; 18 | 19 | } 20 | // End of data_content4.java 21 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/data_info4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class data_info4 implements XdrAble { 18 | public offset4 di_offset; 19 | public length4 di_length; 20 | 21 | public data_info4() { 22 | } 23 | 24 | public data_info4(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | di_offset.xdrEncode(xdr); 32 | di_length.xdrEncode(xdr); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | di_offset = new offset4(xdr); 38 | di_length = new length4(xdr); 39 | } 40 | 41 | } 42 | // End of data_info4.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fattr4_change_attr_type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class fattr4_change_attr_type implements XdrAble { 18 | 19 | public int value; 20 | 21 | public fattr4_change_attr_type() { 22 | } 23 | 24 | public fattr4_change_attr_type(int value) { 25 | this.value = value; 26 | } 27 | 28 | public fattr4_change_attr_type(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | xdr.xdrEncodeInt(value); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = xdr.xdrDecodeInt(); 41 | } 42 | 43 | } 44 | // End of fattr4_change_attr_type.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fattr4_change_policy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class fattr4_change_policy implements XdrAble { 18 | 19 | public change_policy4 value; 20 | 21 | public fattr4_change_policy() { 22 | } 23 | 24 | public fattr4_change_policy(change_policy4 value) { 25 | this.value = value; 26 | } 27 | 28 | public fattr4_change_policy(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | value.xdrEncode(xdr); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = new change_policy4(xdr); 41 | } 42 | 43 | } 44 | // End of fattr4_change_policy.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fattr4_clone_blksize.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class fattr4_clone_blksize implements XdrAble { 18 | 19 | public uint32_t value; 20 | 21 | public fattr4_clone_blksize() { 22 | } 23 | 24 | public fattr4_clone_blksize(uint32_t value) { 25 | this.value = value; 26 | } 27 | 28 | public fattr4_clone_blksize(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | value.xdrEncode(xdr); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = new uint32_t(xdr); 41 | } 42 | 43 | } 44 | // End of fattr4_clone_blksize.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fattr4_fs_charset_cap.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class fattr4_fs_charset_cap implements XdrAble { 18 | 19 | public fs_charset_cap4 value; 20 | 21 | public fattr4_fs_charset_cap() { 22 | } 23 | 24 | public fattr4_fs_charset_cap(fs_charset_cap4 value) { 25 | this.value = value; 26 | } 27 | 28 | public fattr4_fs_charset_cap(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | value.xdrEncode(xdr); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = new fs_charset_cap4(xdr); 41 | } 42 | 43 | } 44 | // End of fattr4_fs_charset_cap.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fattr4_sec_label.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class fattr4_sec_label implements XdrAble { 18 | 19 | public sec_label4 value; 20 | 21 | public fattr4_sec_label() { 22 | } 23 | 24 | public fattr4_sec_label(sec_label4 value) { 25 | this.value = value; 26 | } 27 | 28 | public fattr4_sec_label(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | value.xdrEncode(xdr); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = new sec_label4(xdr); 41 | } 42 | 43 | } 44 | // End of fattr4_sec_label.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fattr4_space_freed.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class fattr4_space_freed implements XdrAble { 18 | 19 | public uint64_t value; 20 | 21 | public fattr4_space_freed() { 22 | } 23 | 24 | public fattr4_space_freed(uint64_t value) { 25 | this.value = value; 26 | } 27 | 28 | public fattr4_space_freed(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | value.xdrEncode(xdr); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = new uint64_t(xdr); 41 | } 42 | 43 | } 44 | // End of fattr4_space_freed.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fattr4_xattr_support.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.xdr.*; 15 | 16 | public class fattr4_xattr_support implements XdrAble { 17 | 18 | public boolean value; 19 | 20 | public fattr4_xattr_support() { 21 | } 22 | 23 | public fattr4_xattr_support(boolean value) { 24 | this.value = value; 25 | } 26 | 27 | public fattr4_xattr_support(XdrDecodingStream xdr) 28 | throws OncRpcException, IOException { 29 | xdrDecode(xdr); 30 | } 31 | 32 | public void xdrEncode(XdrEncodingStream xdr) 33 | throws OncRpcException, IOException { 34 | xdr.xdrEncodeBoolean(value); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | value = xdr.xdrDecodeBoolean(); 40 | } 41 | 42 | } 43 | // End of fattr4_xattr_support.java 44 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/filelayout_hint_care4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface filelayout_hint_care4 { 26 | 27 | public static final int NFLH4_CARE_DENSE = nfs4_prot.NFL4_UFLG_DENSE; 28 | public static final int NFLH4_CARE_COMMIT_THRU_MDS = nfs4_prot.NFL4_UFLG_COMMIT_THRU_MDS; 29 | public static final int NFLH4_CARE_STRIPE_UNIT_SIZE = 0x00000040; 30 | public static final int NFLH4_CARE_STRIPE_COUNT = 0x00000080; 31 | 32 | } 33 | // End of filelayout_hint_care4.java 34 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/fs4_status_type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface fs4_status_type { 26 | 27 | public static final int STATUS4_FIXED = 1; 28 | public static final int STATUS4_UPDATED = 2; 29 | public static final int STATUS4_VERSIONED = 3; 30 | public static final int STATUS4_WRITABLE = 4; 31 | public static final int STATUS4_REFERRAL = 5; 32 | 33 | } 34 | // End of fs4_status_type.java 35 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/gddrnf4_status.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface gddrnf4_status { 26 | 27 | public static final int GDD4_OK = 0; 28 | public static final int GDD4_UNAVAIL = 1; 29 | 30 | } 31 | // End of gddrnf4_status.java 32 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/io_info4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 1/8/15 2:35 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.OncRpcException; 14 | import org.dcache.oncrpc4j.xdr.XdrAble; 15 | import org.dcache.oncrpc4j.xdr.XdrDecodingStream; 16 | import org.dcache.oncrpc4j.xdr.XdrEncodingStream; 17 | 18 | public class io_info4 implements XdrAble, java.io.Serializable { 19 | 20 | public long ii_count; 21 | public long ii_bytes; 22 | 23 | private static final long serialVersionUID = 7002990356778538437L; 24 | 25 | public io_info4() { 26 | } 27 | 28 | public io_info4(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | xdr.xdrEncodeLong(ii_count); 36 | xdr.xdrEncodeLong(ii_bytes); 37 | } 38 | 39 | public void xdrDecode(XdrDecodingStream xdr) 40 | throws OncRpcException, IOException { 41 | ii_count = xdr.xdrDecodeLong(); 42 | ii_bytes = xdr.xdrDecodeLong(); 43 | } 44 | 45 | } 46 | // End of io_info4.java 47 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/labelformat_spec4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class labelformat_spec4 implements XdrAble { 18 | public policy4 lfs_lfs; 19 | public policy4 lfs_pi; 20 | 21 | public labelformat_spec4() { 22 | } 23 | 24 | public labelformat_spec4(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | lfs_lfs.xdrEncode(xdr); 32 | lfs_pi.xdrEncode(xdr); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | lfs_lfs = new policy4(xdr); 38 | lfs_pi = new policy4(xdr); 39 | } 40 | 41 | } 42 | // End of labelformat_spec4.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/layoutiomode4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface layoutiomode4 { 26 | 27 | public static final int LAYOUTIOMODE4_READ = 1; 28 | public static final int LAYOUTIOMODE4_RW = 2; 29 | public static final int LAYOUTIOMODE4_ANY = 3; 30 | 31 | } 32 | // End of layoutiomode4.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/layoutrecall_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface layoutrecall_type4 { 26 | 27 | public static final int LAYOUTRECALL4_FILE = nfs4_prot.LAYOUT4_RET_REC_FILE; 28 | public static final int LAYOUTRECALL4_FSID = nfs4_prot.LAYOUT4_RET_REC_FSID; 29 | public static final int LAYOUTRECALL4_ALL = nfs4_prot.LAYOUT4_RET_REC_ALL; 30 | 31 | } 32 | // End of layoutrecall_type4.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/layoutreturn_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface layoutreturn_type4 { 26 | 27 | public static final int LAYOUTRETURN4_FILE = nfs4_prot.LAYOUT4_RET_REC_FILE; 28 | public static final int LAYOUTRETURN4_FSID = nfs4_prot.LAYOUT4_RET_REC_FSID; 29 | public static final int LAYOUTRETURN4_ALL = nfs4_prot.LAYOUT4_RET_REC_ALL; 30 | 31 | } 32 | // End of layoutreturn_type4.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/limit_by4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface limit_by4 { 26 | 27 | public static final int NFS_LIMIT_SIZE = 1; 28 | public static final int NFS_LIMIT_BLOCKS = 2; 29 | 30 | } 31 | // End of limit_by4.java 32 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/mode4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | import java.io.IOException; 23 | 24 | import org.dcache.oncrpc4j.rpc.OncRpcException; 25 | import org.dcache.oncrpc4j.xdr.XdrAble; 26 | import org.dcache.oncrpc4j.xdr.XdrDecodingStream; 27 | import org.dcache.oncrpc4j.xdr.XdrEncodingStream; 28 | 29 | public class mode4 extends uint32_t { 30 | 31 | public mode4() { 32 | } 33 | 34 | public mode4(int value) { 35 | super(value); 36 | } 37 | 38 | public mode4(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | super(xdr); 41 | } 42 | } 43 | // End of mode4.java 44 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/netloc_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | /** 12 | * Enumeration (collection of constants). 13 | */ 14 | public interface netloc_type4 { 15 | 16 | public static final int NL4_NAME = 1; 17 | public static final int NL4_URL = 2; 18 | public static final int NL4_NETADDR = 3; 19 | 20 | } 21 | // End of netloc_type4.java 22 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/nfs_ftype4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface nfs_ftype4 { 26 | 27 | public static final int NF4REG = 1; 28 | public static final int NF4DIR = 2; 29 | public static final int NF4BLK = 3; 30 | public static final int NF4CHR = 4; 31 | public static final int NF4LNK = 5; 32 | public static final int NF4SOCK = 6; 33 | public static final int NF4FIFO = 7; 34 | public static final int NF4ATTRDIR = 8; 35 | public static final int NF4NAMEDATTR = 9; 36 | 37 | } 38 | // End of nfs_ftype4.java 39 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/notify_deviceid_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface notify_deviceid_type4 { 26 | 27 | public static final int NOTIFY_DEVICEID4_CHANGE = 1; 28 | public static final int NOTIFY_DEVICEID4_DELETE = 2; 29 | 30 | } 31 | // End of notify_deviceid_type4.java 32 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/notify_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface notify_type4 { 26 | 27 | public static final int NOTIFY4_CHANGE_CHILD_ATTRS = 0; 28 | public static final int NOTIFY4_CHANGE_DIR_ATTRS = 1; 29 | public static final int NOTIFY4_REMOVE_ENTRY = 2; 30 | public static final int NOTIFY4_ADD_ENTRY = 3; 31 | public static final int NOTIFY4_RENAME_ENTRY = 4; 32 | public static final int NOTIFY4_CHANGE_COOKIE_VERIFIER = 5; 33 | 34 | } 35 | // End of notify_type4.java 36 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/open_claim_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface open_claim_type4 { 26 | 27 | public static final int CLAIM_NULL = 0; 28 | public static final int CLAIM_PREVIOUS = 1; 29 | public static final int CLAIM_DELEGATE_CUR = 2; 30 | public static final int CLAIM_DELEGATE_PREV = 3; 31 | public static final int CLAIM_FH = 4; 32 | public static final int CLAIM_DELEG_CUR_FH = 5; 33 | public static final int CLAIM_DELEG_PREV_FH = 6; 34 | 35 | } 36 | // End of open_claim_type4.java 37 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/open_delegation_type4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface open_delegation_type4 { 26 | 27 | public static final int OPEN_DELEGATE_NONE = 0; 28 | public static final int OPEN_DELEGATE_READ = 1; 29 | public static final int OPEN_DELEGATE_WRITE = 2; 30 | public static final int OPEN_DELEGATE_NONE_EXT = 3; 31 | 32 | } 33 | // End of open_delegation_type4.java 34 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/opentype4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface opentype4 { 26 | 27 | public static final int OPEN4_NOCREATE = 0; 28 | public static final int OPEN4_CREATE = 1; 29 | 30 | } 31 | // End of opentype4.java 32 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/policy4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class policy4 implements XdrAble { 18 | 19 | public uint32_t value; 20 | 21 | public policy4() { 22 | } 23 | 24 | public policy4(uint32_t value) { 25 | this.value = value; 26 | } 27 | 28 | public policy4(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | value.xdrEncode(xdr); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = new uint32_t(xdr); 41 | } 42 | 43 | } 44 | // End of policy4.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/rpc_gss_svc_t.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface rpc_gss_svc_t { 26 | 27 | public static final int RPC_GSS_SVC_NONE = 1; 28 | public static final int RPC_GSS_SVC_INTEGRITY = 2; 29 | public static final int RPC_GSS_SVC_PRIVACY = 3; 30 | 31 | } 32 | // End of rpc_gss_svc_t.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/sec_label4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class sec_label4 implements XdrAble { 18 | public labelformat_spec4 slai_lfs; 19 | public byte[] slai_data; 20 | 21 | public sec_label4() { 22 | } 23 | 24 | public sec_label4(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | slai_lfs.xdrEncode(xdr); 32 | xdr.xdrEncodeDynamicOpaque(slai_data); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | slai_lfs = new labelformat_spec4(xdr); 38 | slai_data = xdr.xdrDecodeDynamicOpaque(); 39 | } 40 | 41 | } 42 | // End of sec_label4.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/secinfo_style4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface secinfo_style4 { 26 | 27 | public static final int SECINFO_STYLE4_CURRENT_FH = 0; 28 | public static final int SECINFO_STYLE4_PARENT = 1; 29 | 30 | } 31 | // End of secinfo_style4.java 32 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/secret4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class secret4 implements XdrAble { 18 | 19 | public String value; 20 | 21 | public secret4() { 22 | } 23 | 24 | public secret4(String value) { 25 | this.value = value; 26 | } 27 | 28 | public secret4(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | xdr.xdrEncodeString(value); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = xdr.xdrDecodeString(); 41 | } 42 | 43 | } 44 | // End of secret4.java 45 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/seek_res4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 4/3/20, 4:01 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class seek_res4 implements XdrAble { 18 | public boolean sr_eof; 19 | public offset4 sr_offset; 20 | 21 | public seek_res4() { 22 | } 23 | 24 | public seek_res4(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | xdr.xdrEncodeBoolean(sr_eof); 32 | sr_offset.xdrEncode(xdr); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | sr_eof = xdr.xdrDecodeBoolean(); 38 | sr_offset = new offset4(xdr); 39 | } 40 | 41 | } 42 | // End of seek_res4.java 43 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/setxattr_option4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | /** 12 | * Enumeration (collection of constants). 13 | */ 14 | public interface setxattr_option4 { 15 | 16 | public static final int SETXATTR4_EITHER = 0; 17 | public static final int SETXATTR4_CREATE = 1; 18 | public static final int SETXATTR4_REPLACE = 2; 19 | 20 | } 21 | // End of setxattr_option4.java 22 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/ssv_subkey4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface ssv_subkey4 { 26 | 27 | public static final int SSV4_SUBKEY_MIC_I2T = 1; 28 | public static final int SSV4_SUBKEY_MIC_T2I = 2; 29 | public static final int SSV4_SUBKEY_SEAL_I2T = 3; 30 | public static final int SSV4_SUBKEY_SEAL_T2I = 4; 31 | 32 | } 33 | // End of ssv_subkey4.java 34 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/stable_how4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface stable_how4 { 26 | 27 | public static final int UNSTABLE4 = 0; 28 | public static final int DATA_SYNC4 = 1; 29 | public static final int FILE_SYNC4 = 2; 30 | 31 | } 32 | // End of stable_how4.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/state_protect_how4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface state_protect_how4 { 26 | 27 | public static final int SP4_NONE = 0; 28 | public static final int SP4_MACH_CRED = 1; 29 | public static final int SP4_SSV = 2; 30 | 31 | } 32 | // End of state_protect_how4.java 33 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/time_how4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 - 2012 Deutsches Elektronen-Synchroton, 3 | * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY 4 | * 5 | * This library is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU Library General Public License as 7 | * published by the Free Software Foundation; either version 2 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU Library General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Library General Public 16 | * License along with this program (see the file COPYING.LIB for more 17 | * details); if not, write to the Free Software Foundation, Inc., 18 | * 675 Mass Ave, Cambridge, MA 02139, USA. 19 | */ 20 | package org.dcache.nfs.v4.xdr; 21 | 22 | /** 23 | * Enumeration (collection of constants). 24 | */ 25 | public interface time_how4 { 26 | 27 | public static final int SET_TO_SERVER_TIME4 = 0; 28 | public static final int SET_TO_CLIENT_TIME4 = 1; 29 | 30 | } 31 | // End of time_how4.java 32 | -------------------------------------------------------------------------------- /core/src/main/java/org/dcache/nfs/v4/xdr/xattrvalue4.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 11/1/19, 1:52 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.nfs.v4.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class xattrvalue4 implements XdrAble { 18 | 19 | public byte[] value; 20 | 21 | public xattrvalue4() { 22 | } 23 | 24 | public xattrvalue4(byte[] value) { 25 | this.value = value; 26 | } 27 | 28 | public xattrvalue4(XdrDecodingStream xdr) 29 | throws OncRpcException, IOException { 30 | xdrDecode(xdr); 31 | } 32 | 33 | public void xdrEncode(XdrEncodingStream xdr) 34 | throws OncRpcException, IOException { 35 | xdr.xdrEncodeDynamicOpaque(value); 36 | } 37 | 38 | public void xdrDecode(XdrDecodingStream xdr) 39 | throws OncRpcException, IOException { 40 | value = xdr.xdrDecodeDynamicOpaque(); 41 | } 42 | 43 | } 44 | // End of xattrvalue4.java 45 | -------------------------------------------------------------------------------- /core/src/test/java/org/dcache/nfs/util/ManualClock.java: -------------------------------------------------------------------------------- 1 | package org.dcache.nfs.util; 2 | 3 | import java.time.Clock; 4 | import java.time.Duration; 5 | import java.time.Instant; 6 | import java.time.ZoneId; 7 | import java.util.concurrent.TimeUnit; 8 | import java.util.concurrent.atomic.AtomicLong; 9 | 10 | /** 11 | * An implementation of {@link Clock} that allows to manually advance the time. 12 | */ 13 | public class ManualClock extends Clock { 14 | 15 | private final AtomicLong currentTime = new AtomicLong(); 16 | 17 | @Override 18 | public Instant instant() { 19 | return Instant.ofEpochMilli(currentTime.get()); 20 | } 21 | 22 | public void advance(long time, TimeUnit unit) { 23 | currentTime.addAndGet(unit.toMillis(time)); 24 | } 25 | 26 | public void advance(Duration duration) { 27 | currentTime.addAndGet(duration.toMillis()); 28 | } 29 | 30 | @Override 31 | public ZoneId getZone() { 32 | return Clock.systemDefaultZone().getZone(); 33 | } 34 | 35 | @Override 36 | public Clock withZone(ZoneId zone) { 37 | throw new UnsupportedClassVersionError(); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /core/src/test/java/org/dcache/nfs/v4/OperationLOCKUTest.java: -------------------------------------------------------------------------------- 1 | package org.dcache.nfs.v4; 2 | 3 | import static org.dcache.nfs.v4.NfsTestUtils.*; 4 | 5 | import java.io.IOException; 6 | 7 | import org.dcache.nfs.status.InvalException; 8 | import org.dcache.nfs.v4.xdr.COMPOUND4args; 9 | import org.dcache.nfs.v4.xdr.nfs_fh4; 10 | import org.dcache.nfs.v4.xdr.nfs_lock_type4; 11 | import org.dcache.nfs.vfs.Inode; 12 | import org.junit.Before; 13 | import org.junit.Test; 14 | 15 | public class OperationLOCKUTest { 16 | 17 | private NFSv4StateHandler stateHandler; 18 | private Inode inode = Inode.forFile(new byte[] {1, 2, 3, 4}); 19 | private nfs_fh4 fh = new nfs_fh4(inode.toNfsHandle()); 20 | 21 | @Before 22 | public void setUp() { 23 | stateHandler = new NFSv4StateHandler(); 24 | } 25 | 26 | @Test(expected = InvalException.class) 27 | public void testOffsetLengthOverflow() throws IOException { 28 | 29 | COMPOUND4args lockuArgs = new CompoundBuilder() 30 | .withPutfh(fh) 31 | .withLocku(nfs_lock_type4.READW_LT, 32 | Stateids.OneStateId(), 33 | 0, Long.MAX_VALUE, Long.MIN_VALUE + 1) // treated as unsigned 34 | .build(); 35 | 36 | CompoundContext context = new CompoundContextBuilder() 37 | .withStateHandler(stateHandler) 38 | .withCall(generateRpcCall()) 39 | .build(); 40 | 41 | execute(context, lockuArgs); 42 | 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /core/src/test/java/org/dcache/nfs/v4/xdr/offset4Test.java: -------------------------------------------------------------------------------- 1 | package org.dcache.nfs.v4.xdr; 2 | 3 | import org.dcache.nfs.status.InvalException; 4 | import org.junit.Test; 5 | 6 | import com.google.common.primitives.UnsignedLong; 7 | 8 | public class offset4Test { 9 | 10 | @Test 11 | public void shouldSucceedIfSumNotOverflow() throws Exception { 12 | offset4 offset = new offset4(5); 13 | length4 length = new length4(Long.MAX_VALUE - 10); 14 | offset.checkOverflow(length, null); 15 | } 16 | 17 | @Test(expected = InvalException.class) 18 | public void shouldfailIfSumOverflow() throws Exception { 19 | offset4 offset = new offset4(UnsignedLong.MAX_VALUE.longValue()); 20 | length4 length = new length4(5); 21 | offset.checkOverflow(length, null); 22 | } 23 | 24 | @Test 25 | public void shouldSuccessSignedLongOverflow() throws Exception { 26 | offset4 offset = new offset4(Long.MAX_VALUE); 27 | length4 length = new length4(5); 28 | offset.checkOverflow(length, null); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /core/src/test/java/org/dcache/nfs/vfs/FsStatTest.java: -------------------------------------------------------------------------------- 1 | package org.dcache.nfs.vfs; 2 | 3 | import java.io.ByteArrayInputStream; 4 | import java.io.ByteArrayOutputStream; 5 | import java.io.ObjectInputStream; 6 | import java.io.ObjectOutputStream; 7 | 8 | import org.junit.Assert; 9 | import org.junit.Test; 10 | 11 | public class FsStatTest { 12 | @Test 13 | public void testSerialization() throws Exception { 14 | FsStat fsStat = new FsStat(1, 2, 3, 4); 15 | ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); 16 | try (ObjectOutputStream os = new ObjectOutputStream(byteArrayOutputStream)) { 17 | os.writeObject(fsStat); 18 | } 19 | 20 | byte[] serialized = byteArrayOutputStream.toByteArray(); 21 | ObjectInputStream is = new ObjectInputStream(new ByteArrayInputStream(serialized)); 22 | 23 | FsStat deserialized = (FsStat) is.readObject(); 24 | 25 | Assert.assertNotNull(deserialized); 26 | Assert.assertEquals(fsStat.getTotalSpace(), deserialized.getTotalSpace()); 27 | Assert.assertEquals(fsStat.getTotalFiles(), deserialized.getTotalFiles()); 28 | Assert.assertEquals(fsStat.getUsedSpace(), deserialized.getUsedSpace()); 29 | Assert.assertEquals(fsStat.getUsedFiles(), deserialized.getUsedFiles()); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /core/src/test/java/org/dcache/testutils/AssertXdr.java: -------------------------------------------------------------------------------- 1 | package org.dcache.testutils; 2 | 3 | import org.dcache.oncrpc4j.xdr.XdrAble; 4 | import org.dcache.oncrpc4j.xdr.XdrEncodingStream; 5 | import org.mockito.Mockito; 6 | 7 | public class AssertXdr { 8 | public static void assertXdrEncodable(XdrAble xdrAble) { 9 | try { 10 | XdrEncodingStream outputStream = Mockito.mock(XdrEncodingStream.class); 11 | xdrAble.xdrEncode(outputStream); // should not blow up 12 | } catch (Exception e) { 13 | throw new AssertionError("object does not survive xdr encoding", e); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /core/src/test/java/org/dcache/testutils/InetAddressBuilder.java: -------------------------------------------------------------------------------- 1 | package org.dcache.testutils; 2 | 3 | import java.net.InetAddress; 4 | import java.net.UnknownHostException; 5 | 6 | public class InetAddressBuilder { 7 | private String ipAddress; 8 | private String hostName; 9 | 10 | public InetAddressBuilder ip(String ipAddress) { 11 | this.ipAddress = ipAddress; 12 | return this; 13 | } 14 | 15 | public InetAddressBuilder hostName(String hostName) { 16 | this.hostName = hostName; 17 | return this; 18 | } 19 | 20 | public InetAddress build() { 21 | try { 22 | return InetAddress.getByAddress(hostName, InetAddress.getByName(ipAddress).getAddress()); 23 | } catch (UnknownHostException e) { 24 | throw new IllegalStateException(e); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /core/src/test/java/org/dcache/testutils/XdrHelper.java: -------------------------------------------------------------------------------- 1 | package org.dcache.testutils; 2 | 3 | import org.dcache.oncrpc4j.xdr.Xdr; 4 | import org.dcache.oncrpc4j.xdr.XdrAble; 5 | 6 | public class XdrHelper { 7 | private XdrHelper() { 8 | } 9 | 10 | public static int calculateSize(XdrAble xdrAble) { 11 | try { 12 | Xdr xdr = new Xdr(128); 13 | xdr.beginEncoding(); 14 | xdrAble.xdrEncode(xdr); 15 | xdr.endEncoding(); 16 | return xdr.getBytes().length; 17 | } catch (Exception e) { 18 | throw new AssertionError("object does not survive xdr encoding", e); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /core/src/test/resources/org/dcache/nfs/exports: -------------------------------------------------------------------------------- 1 | # sample /etc/exports file 2 | / master(rw) trusty(rw,no_root_squash) 3 | /projects proj*.local.domain.org(rw) 4 | /usr *.local.domain.org(ro) @trusted(rw) 5 | /home/joe pc001(rw,all_squash,anonuid=150,anongid=100) 6 | /pnfs localhost(rw,no_root_squash) 7 | /h1 h1.desy.de 8 | /h2 client1 client2 9 | /trusted www.google.com(no_root_squash,rw) www.yahoo.com 10 | /subnet_b 192.168.2.1/24 11 | /subnet_c 192.168.2.1/16 12 | /subnet_bad 192.168.2.1/16/32 13 | /subnet_ipv6 fe80::21c:c0ff:fea0:caf4/64 14 | /export_with_krp5 *(sec=krb5) 15 | /export_with_krp5i *(sec=krb5i) 16 | /export_with_krp5p *(sec=krb5p) 17 | /export_with_sys *(sec=sys) 18 | /bad_export *(some_unsupported_option) 19 | /all_squash *(all_squash) 20 | /no_squash * 21 | /anon_access *(anonuid=500,anongid=501) 22 | /anon_access_default * 23 | /with_dcap * 24 | /without_dcap *(no_dcap) 25 | /export/with/slash/ 26 | not/absolute/path 27 | /export_all_root 192.168.1.1(rw,all_root) 28 | /export_with_pnfs 192.168.1.1(rw,pnfs) 29 | /export_without_pnfs 192.168.1.1(rw,nopnfs) 30 | /export_default_pnfs 192.168.1.1(rw) 31 | /layouttypes 172.16.1.1(rw,lt=nfsv4_1_files) 172.16.2.1(rw,lt=flex_files:nfsv4_1_files) 172.16.3.1(rw,lt=nfsv4_1_files:flex_files) 172.16.4.1(rw) 32 | /order_test 192.168.17.0/24(ro) 192.168.17.1(rw) 33 | /secure 192.168.17.0/24(secure) 34 | /insecure 192.168.17.0/24(insecure) 35 | /secure_default 192.168.17.0/24 -------------------------------------------------------------------------------- /core/src/test/resources/org/dcache/nfs/exports.krb: -------------------------------------------------------------------------------- 1 | / *(sec=krb5) 2 | 3 | -------------------------------------------------------------------------------- /core/src/test/resources/org/dcache/nfs/exports.mix: -------------------------------------------------------------------------------- 1 | / *(sec=krb5) 2 | / *(sec=sys) 3 | -------------------------------------------------------------------------------- /core/src/test/resources/org/dcache/nfs/exports.sys: -------------------------------------------------------------------------------- 1 | / *(sec=sys) 2 | -------------------------------------------------------------------------------- /core/src/test/resources/org/dcache/nfs/exports.unsorted: -------------------------------------------------------------------------------- 1 | # the entries must be in some kind of random order 2 | 3 | /data 10.0.0.0/16 4 | /data 10.0.0.1 5 | /data 10.0.0.0/24 6 | /data 10.0.0.0/8 7 | -------------------------------------------------------------------------------- /core/src/test/resources/org/dcache/nfs/v3/simpleExports: -------------------------------------------------------------------------------- 1 | / *(rw,all_root,sec=none) -------------------------------------------------------------------------------- /dlm/src/test/resources/hazelcast.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | nfs-dlm-test 6 | 7 | 8 | slf4j 9 | false 10 | false 11 | 12 | 13 | 14 | 15 | 127.0.0.1 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /rquota/src/main/java/org/dcache/rquota/xdr/ext_getquota_args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 6/19/24, 7:09 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.rquota.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class ext_getquota_args implements XdrAble { 18 | public String gqa_pathp; 19 | public int gqa_type; 20 | public int gqa_id; 21 | 22 | public ext_getquota_args() { 23 | } 24 | 25 | public ext_getquota_args(XdrDecodingStream xdr) 26 | throws OncRpcException, IOException { 27 | xdrDecode(xdr); 28 | } 29 | 30 | public void xdrEncode(XdrEncodingStream xdr) 31 | throws OncRpcException, IOException { 32 | xdr.xdrEncodeString(gqa_pathp); 33 | xdr.xdrEncodeInt(gqa_type); 34 | xdr.xdrEncodeInt(gqa_id); 35 | } 36 | 37 | public void xdrDecode(XdrDecodingStream xdr) 38 | throws OncRpcException, IOException { 39 | gqa_pathp = xdr.xdrDecodeString(); 40 | gqa_type = xdr.xdrDecodeInt(); 41 | gqa_id = xdr.xdrDecodeInt(); 42 | } 43 | 44 | } 45 | // End of ext_getquota_args.java 46 | -------------------------------------------------------------------------------- /rquota/src/main/java/org/dcache/rquota/xdr/getquota_args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 6/19/24, 7:09 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.rquota.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class getquota_args implements XdrAble { 18 | public String gqa_pathp; 19 | public int gqa_uid; 20 | 21 | public getquota_args() { 22 | } 23 | 24 | public getquota_args(XdrDecodingStream xdr) 25 | throws OncRpcException, IOException { 26 | xdrDecode(xdr); 27 | } 28 | 29 | public void xdrEncode(XdrEncodingStream xdr) 30 | throws OncRpcException, IOException { 31 | xdr.xdrEncodeString(gqa_pathp); 32 | xdr.xdrEncodeInt(gqa_uid); 33 | } 34 | 35 | public void xdrDecode(XdrDecodingStream xdr) 36 | throws OncRpcException, IOException { 37 | gqa_pathp = xdr.xdrDecodeString(); 38 | gqa_uid = xdr.xdrDecodeInt(); 39 | } 40 | 41 | } 42 | // End of getquota_args.java 43 | -------------------------------------------------------------------------------- /rquota/src/main/java/org/dcache/rquota/xdr/qr_status.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 6/19/24, 7:09 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.rquota.xdr; 10 | 11 | /** 12 | * Enumeration (collection of constants). 13 | */ 14 | public interface qr_status { 15 | 16 | public static final int Q_OK = 1; 17 | public static final int Q_NOQUOTA = 2; 18 | public static final int Q_EPERM = 3; 19 | 20 | } 21 | // End of qr_status.java 22 | -------------------------------------------------------------------------------- /rquota/src/main/java/org/dcache/rquota/xdr/rquota.java~: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 6/19/24, 7:09 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.rquota.xdr; 10 | /** 11 | * A collection of constants used by the "rquota" ONC/RPC program. 12 | */ 13 | public interface rquota { 14 | public static final int RQUOTAPROC_GETQUOTA_1 = 1; 15 | public static final int RQUOTAPROC_GETACTIVEQUOTA_1 = 2; 16 | public static final int RQUOTAPROC_GETQUOTA_2 = 1; 17 | public static final int RQUOTAPROC_SETQUOTA_1 = 3; 18 | public static final int RQUOTAPROC_GETACTIVEQUOTA_2 = 2; 19 | public static final int RQUOTAPROC_SETQUOTA_2 = 3; 20 | public static final int RQUOTAVERS = 1; 21 | public static final int RQ_PATHLEN = 1024; 22 | public static final int RQUOTAPROG = 100011; 23 | public static final int RQUOTAPROC_SETACTIVEQUOTA_1 = 4; 24 | public static final int RQUOTAPROC_SETACTIVEQUOTA_2 = 4; 25 | public static final int EXT_RQUOTAVERS = 2; 26 | } 27 | // End of rquota.java 28 | -------------------------------------------------------------------------------- /rquota/src/main/java/org/dcache/rquota/xdr/setquota_args.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Automatically generated by jrpcgen 1.0.7+ on 6/19/24, 7:09 PM 3 | * jrpcgen is part of the "Remote Tea" ONC/RPC package for Java 4 | * See http://remotetea.sourceforge.net for details 5 | * 6 | * This version of jrpcgen adopted by dCache project 7 | * See http://www.dCache.ORG for details 8 | */ 9 | package org.dcache.rquota.xdr; 10 | 11 | import java.io.IOException; 12 | 13 | import org.dcache.oncrpc4j.rpc.*; 14 | import org.dcache.oncrpc4j.rpc.net.*; 15 | import org.dcache.oncrpc4j.xdr.*; 16 | 17 | public class setquota_args implements XdrAble { 18 | public int sqa_qcmd; 19 | public String sqa_pathp; 20 | public int sqa_id; 21 | public sq_dqblk sqa_dqblk; 22 | 23 | public setquota_args() { 24 | } 25 | 26 | public setquota_args(XdrDecodingStream xdr) 27 | throws OncRpcException, IOException { 28 | xdrDecode(xdr); 29 | } 30 | 31 | public void xdrEncode(XdrEncodingStream xdr) 32 | throws OncRpcException, IOException { 33 | xdr.xdrEncodeInt(sqa_qcmd); 34 | xdr.xdrEncodeString(sqa_pathp); 35 | xdr.xdrEncodeInt(sqa_id); 36 | sqa_dqblk.xdrEncode(xdr); 37 | } 38 | 39 | public void xdrDecode(XdrDecodingStream xdr) 40 | throws OncRpcException, IOException { 41 | sqa_qcmd = xdr.xdrDecodeInt(); 42 | sqa_pathp = xdr.xdrDecodeString(); 43 | sqa_id = xdr.xdrDecodeInt(); 44 | sqa_dqblk = new sq_dqblk(xdr); 45 | } 46 | 47 | } 48 | // End of setquota_args.java 49 | -------------------------------------------------------------------------------- /scripts/reformat-code.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | cd "$(dirname $0)"/.. 5 | mvn verify -Dreformat -DskipTests 6 | -------------------------------------------------------------------------------- /spotbugs-exclude.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /spring/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4.0.0 4 | 5 | 6 | org.dcache 7 | nfs4j 8 | 0.28.0-SNAPSHOT 9 | 10 | 11 | Spring integarion for nfs4j 12 | org.dcache 13 | nfs4j-spring 14 | jar 15 | 16 | 17 | 18 | org.springframework 19 | spring-context 20 | provided 21 | 22 | 23 | org.dcache 24 | nfs4j-core 25 | ${project.version} 26 | 27 | 28 | 29 | 30 | --------------------------------------------------------------------------------