Resync
[CMakeLuaTailorHgBridge.git] / CMakeLua / Source / CTest / cmCTestSubmitHandler.h
blob7ea54ddd55863f89b1edcede4bd656bcf0637911
1 /*=========================================================================
3 Program: CMake - Cross-Platform Makefile Generator
4 Module: $RCSfile: cmCTestSubmitHandler.h,v $
5 Language: C++
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
30 public:
31 cmTypeMacro(cmCTestSubmitHandler, cmCTestGenericHandler);
33 cmCTestSubmitHandler();
34 ~cmCTestSubmitHandler() { this->LogFile = 0; }
37 * The main entry point for this class
39 int ProcessHandler();
41 void Initialize();
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);
49 private:
50 void SetLogFile(std::ostream* ost) { this->LogFile = ost; }
52 /**
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;
86 int HTTPProxyType;
87 cmStdString HTTPProxyAuth;
88 cmStdString FTPProxy;
89 int FTPProxyType;
90 std::ostream* LogFile;
91 bool SubmitPart[cmCTest::PartCount];
92 bool CDash;
93 cmCTest::SetOfStrings Files;
96 #endif