| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- /*============================================================================
- CMake - Cross Platform Makefile Generator
- Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
- Distributed under the OSI-approved BSD License (the "License");
- see accompanying file Copyright.txt for details.
- This software is distributed WITHOUT ANY WARRANTY; without even the
- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the License for more information.
- ============================================================================*/
- #ifndef cmCTestSubmitHandler_h
- #define cmCTestSubmitHandler_h
- #include "cmCTestGenericHandler.h"
- /** \class cmCTestSubmitHandler
- * \brief Helper class for CTest
- *
- * Submit testing results
- *
- */
- class cmCTestSubmitHandler : public cmCTestGenericHandler
- {
- public:
- cmTypeMacro(cmCTestSubmitHandler, cmCTestGenericHandler);
- cmCTestSubmitHandler();
- ~cmCTestSubmitHandler() { this->LogFile = 0; }
- /*
- * The main entry point for this class
- */
- int ProcessHandler();
- void Initialize();
- /** Specify a set of parts (by name) to submit. */
- void SelectParts(std::set<cmCTest::Part> const& parts);
- /** Specify a set of files to submit. */
- void SelectFiles(cmCTest::SetOfStrings const& files);
- private:
- void SetLogFile(std::ostream* ost) { this->LogFile = ost; }
- /**
- * Submit file using various ways
- */
- bool SubmitUsingFTP(const std::string& localprefix,
- const std::set<std::string>& files,
- const std::string& remoteprefix,
- const std::string& url);
- bool SubmitUsingHTTP(const std::string& localprefix,
- const std::set<std::string>& files,
- const std::string& remoteprefix,
- const std::string& url);
- bool SubmitUsingSCP(const std::string& scp_command,
- const std::string& localprefix,
- const std::set<std::string>& files,
- const std::string& remoteprefix,
- const std::string& url);
- bool SubmitUsingCP( const std::string& localprefix,
- const std::set<std::string>& files,
- const std::string& remoteprefix,
- const std::string& url);
- bool TriggerUsingHTTP(const std::set<std::string>& files,
- const std::string& remoteprefix,
- const std::string& url);
- bool SubmitUsingXMLRPC(const std::string& localprefix,
- const std::set<std::string>& files,
- const std::string& remoteprefix,
- const std::string& url);
- typedef std::vector<char> cmCTestSubmitHandlerVectorOfChar;
- void ParseResponse(cmCTestSubmitHandlerVectorOfChar chunk);
- std::string GetSubmitResultsPrefix();
- class ResponseParser;
- std::string HTTPProxy;
- int HTTPProxyType;
- std::string HTTPProxyAuth;
- std::string FTPProxy;
- int FTPProxyType;
- std::ostream* LogFile;
- bool SubmitPart[cmCTest::PartCount];
- bool CDash;
- bool HasWarnings;
- bool HasErrors;
- cmCTest::SetOfStrings Files;
- };
- #endif
|