XRootD
Loading...
Searching...
No Matches
XrdFrcRequest.hh
Go to the documentation of this file.
1#ifndef __FRCREQUEST_H__
2#define __FRCREQUEST_H__
3/******************************************************************************/
4/* */
5/* X r d F r c R e q u e s t . h h */
6/* */
7/* (c) 2010 by the Board of Trustees of the Leland Stanford, Jr., University */
8/* All Rights Reserved */
9/* Produced by Andrew Hanushevsky for Stanford University under contract */
10/* DE-AC02-76-SFO0515 with the Department of Energy */
11/* */
12/* This file is part of the XRootD software suite. */
13/* */
14/* XRootD is free software: you can redistribute it and/or modify it under */
15/* the terms of the GNU Lesser General Public License as published by the */
16/* Free Software Foundation, either version 3 of the License, or (at your */
17/* option) any later version. */
18/* */
19/* XRootD is distributed in the hope that it will be useful, but WITHOUT */
20/* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */
21/* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */
22/* License for more details. */
23/* */
24/* You should have received a copy of the GNU Lesser General Public License */
25/* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */
26/* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */
27/* */
28/* The copyright holder's institutional names and contributor's names may not */
29/* be used to endorse or promote products derived from this software without */
30/* specific prior written permission of the institution or contributor. */
31/******************************************************************************/
32
34{
35public:
36
37char LFN[3072]; // Logical File Name ('\0' optional opaque)
38char User[256]; // User trace identifier
39char ID[40]; // Request ID
40char Notify[512]; // Notification path
41char Reserved[88];
42char iName[32]; // Instance name
43char csValue[64]; // Checksum value (dependent on csType).
44long long addTOD; // Time added to queue
45int This; // Offset to this request
46int Next; // Offset to next request
47int Options; // Processing options (see below)
48short LFO; // Offset to lfn in url if LFN is a url (o/w 0)
49short Opaque; // Offset to '?' in LFN if exists, 0 o/w
51char csType; // Checksum type
52char OPc; // Original Operation Request code (debugging)
53signed
54char Prty; // Request priority
55
56// Flags set in options
57//
58static const int msgFail = 0x00000001;
59static const int msgSucc = 0x00000002;
60static const int makeRW = 0x00000004;
61static const int Migrate = 0x00000010;
62static const int Purge = 0x00000020;
63static const int Register = 0x00000040;
64
65// Checksum types (not all of which are supported)
66//
67static const int csNone = 0;
68static const int csSHA1 = 1;
69static const int csSHA2 = 2;
70static const int csSHA3 = 3;
71static const int csAdler32= 4;
72static const int csMD5 = 5;
73static const int csCRC32 = 6;
74
75// These define valid priorities
76//
77static const int maxPrty = 2;
78static const int maxPQE = 3;
79
80// The following define what can be listed from the queue
81//
84
85// These define possible queues along with the "nil" queue
86//
87static const int stgQ = 0; // Stage queue
88static const int migQ = 1; // Migrate queue
89static const int getQ = 2; // Copy in queue
90static const int putQ = 3; // Copy out queue
91static const int nilQ = 4; // Empty queue
92static const int numQ = 5;
93static const int outQ = 1; // Used as a mask only
94};
95#endif
static const int stgQ
static const int getQ
char LFN[3072]
static const int csNone
static const int migQ
static const int csCRC32
static const int putQ
static const int Purge
static const int msgFail
static const int csSHA2
static const int csMD5
static const int makeRW
static const int msgSucc
static const int outQ
static const int csSHA3
static const int Migrate
static const int Register
signed char Prty
static const int csSHA1
static const int csAdler32
char Reserved[88]
static const int numQ
static const int maxPQE
char Notify[512]
static const int nilQ
static const int maxPrty
long long addTOD