xrootd
Loading...
Searching...
No Matches
XrdClThirdPartyCopyJob.hh
Go to the documentation of this file.
1//------------------------------------------------------------------------------
2// Copyright (c) 2011-2012 by European Organization for Nuclear Research (CERN)
3// Author: Lukasz Janyst <ljanyst@cern.ch>
4//------------------------------------------------------------------------------
5// XRootD is free software: you can redistribute it and/or modify
6// it under the terms of the GNU Lesser General Public License as published by
7// the Free Software Foundation, either version 3 of the License, or
8// (at your option) any later version.
9//
10// XRootD 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 General Public License for more details.
14//
15// You should have received a copy of the GNU Lesser General Public License
16// along with XRootD. If not, see <http://www.gnu.org/licenses/>.
17//------------------------------------------------------------------------------
18
19#ifndef __XRD_CL_THIRD_PARTY_COPY_JOB_HH__
20#define __XRD_CL_THIRD_PARTY_COPY_JOB_HH__
21
23#include "XrdCl/XrdClCopyJob.hh"
24#include "XrdCl/XrdClFile.hh"
25
26namespace XrdCl
27{
28 class File;
29
31 {
32 public:
33 //------------------------------------------------------------------------
35 //------------------------------------------------------------------------
36 ThirdPartyCopyJob( uint16_t jobId,
37 PropertyList *jobProperties,
38 PropertyList *jobResults );
39
40 //------------------------------------------------------------------------
45 //------------------------------------------------------------------------
46 virtual XRootDStatus Run( CopyProgressHandler *progress = 0 );
47
48 private:
49
50 //------------------------------------------------------------------------
57 //------------------------------------------------------------------------
59
60 //------------------------------------------------------------------------
62 //------------------------------------------------------------------------
64
65 //------------------------------------------------------------------------
67 //------------------------------------------------------------------------
69
70 //------------------------------------------------------------------------
72 //------------------------------------------------------------------------
73 static std::string GenerateKey();
74
78 std::string tpcKey;
79
80 std::string checkSumMode;
81 std::string checkSumType;
82 std::string checkSumPreset;
83 uint64_t sourceSize;
84 uint16_t initTimeout;
85 bool force;
86 bool coerce;
88 int nbStrm;
89 bool tpcLite;
90 };
91}
92
93#endif // __XRD_CL_THIRD_PARTY_COPY_JOB_HH__
Copy job.
Definition XrdClCopyJob.hh:36
Interface for copy progress notification.
Definition XrdClCopyProcess.hh:42
A file.
Definition XrdClFile.hh:46
A key-value pair map storing both keys and values as strings.
Definition XrdClPropertyList.hh:41
Definition XrdClThirdPartyCopyJob.hh:31
std::string checkSumPreset
Definition XrdClThirdPartyCopyJob.hh:82
std::string checkSumType
Definition XrdClThirdPartyCopyJob.hh:81
XRootDStatus RunTPC(CopyProgressHandler *progress)
Run vanilla copy job.
XRootDStatus RunLite(CopyProgressHandler *progress)
Run TPC-lite copy job.
int nbStrm
Definition XrdClThirdPartyCopyJob.hh:88
URL tpcSource
Definition XrdClThirdPartyCopyJob.hh:76
uint64_t sourceSize
Definition XrdClThirdPartyCopyJob.hh:83
static std::string GenerateKey()
Generate TPC key.
bool force
Definition XrdClThirdPartyCopyJob.hh:85
XrdCl::File dstFile
Definition XrdClThirdPartyCopyJob.hh:75
bool delegate
Definition XrdClThirdPartyCopyJob.hh:87
bool coerce
Definition XrdClThirdPartyCopyJob.hh:86
uint16_t initTimeout
Definition XrdClThirdPartyCopyJob.hh:84
ThirdPartyCopyJob(uint16_t jobId, PropertyList *jobProperties, PropertyList *jobResults)
Constructor.
URL realTarget
Definition XrdClThirdPartyCopyJob.hh:77
bool tpcLite
Definition XrdClThirdPartyCopyJob.hh:89
std::string tpcKey
Definition XrdClThirdPartyCopyJob.hh:78
std::string checkSumMode
Definition XrdClThirdPartyCopyJob.hh:80
virtual XRootDStatus Run(CopyProgressHandler *progress=0)
URL representation.
Definition XrdClURL.hh:31
Request status.
Definition XrdClXRootDResponses.hh:219
Definition XrdClAction.hh:34