1 /*=========================================================================
3 Program: CMake - Cross-Platform Makefile Generator
4 Module: $RCSfile: cmCTestSubmitHandler.h,v $
6 Date: $Date: 2009-03-31 19:24:50 $
7 Version: $Revision: 1.8 $
9 Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
10 See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
17 #ifndef cmCTestSubmitHandler_h
18 #define cmCTestSubmitHandler_h
20 #include "cmCTestGenericHandler.h"
22 /** \class cmCTestSubmitHandler
23 * \brief Helper class for CTest
25 * Submit testing results
28 class cmCTestSubmitHandler
: public cmCTestGenericHandler
31 cmTypeMacro(cmCTestSubmitHandler
, cmCTestGenericHandler
);
33 cmCTestSubmitHandler();
34 ~cmCTestSubmitHandler() { this->LogFile
= 0; }
37 * The main entry point for this class
43 /** Specify a set of parts (by name) to submit. */
44 void SelectParts(std::set
<cmCTest::Part
> const& parts
);
46 /** Specify a set of files to submit. */
47 void SelectFiles(cmCTest::SetOfStrings
const& files
);
50 void SetLogFile(std::ostream
* ost
) { this->LogFile
= ost
; }
53 * Submit file using various ways
55 bool SubmitUsingFTP(const cmStdString
& localprefix
,
56 const std::set
<cmStdString
>& files
,
57 const cmStdString
& remoteprefix
,
58 const cmStdString
& url
);
59 bool SubmitUsingHTTP(const cmStdString
& localprefix
,
60 const std::set
<cmStdString
>& files
,
61 const cmStdString
& remoteprefix
,
62 const cmStdString
& url
);
63 bool SubmitUsingSCP(const cmStdString
& scp_command
,
64 const cmStdString
& localprefix
,
65 const std::set
<cmStdString
>& files
,
66 const cmStdString
& remoteprefix
,
67 const cmStdString
& url
);
69 bool SubmitUsingCP( const cmStdString
& localprefix
,
70 const std::set
<cmStdString
>& files
,
71 const cmStdString
& remoteprefix
,
72 const cmStdString
& url
);
74 bool TriggerUsingHTTP(const std::set
<cmStdString
>& files
,
75 const cmStdString
& remoteprefix
,
76 const cmStdString
& url
);
78 bool SubmitUsingXMLRPC(const cmStdString
& localprefix
,
79 const std::set
<cmStdString
>& files
,
80 const cmStdString
& remoteprefix
,
81 const cmStdString
& url
);
83 std::string
GetSubmitResultsPrefix();
85 cmStdString HTTPProxy
;
87 cmStdString HTTPProxyAuth
;
90 std::ostream
* LogFile
;
91 bool SubmitPart
[cmCTest::PartCount
];
93 cmCTest::SetOfStrings Files
;