1
  
2
  
3
  
4
  
5
  
6
  
7
  
8
  
9
  
10
  
11
  
12
  
13
  
14
  
15
  
16
  
17
  
18
  
19
  
20
  
21
  
22
  
23
  
24
  
25
  
26
  
27
  
28
  
29
  
30
  
31
  
32
  
33
  
34
  
35
  
36
  
37
  
38
  
39
  
40
  
41
  
42
  
43
  
44
  
45
  
46
  
47
  
48
  
49
  
50
  
51
  
52
  
// roxen.h: interface for the CRoxen class. 
// 
// $Id$ 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_ROXEN_H__687F3297_9A48_455D_A41E_C6306A59F0CB__INCLUDED_) 
#define AFX_ROXEN_H__687F3297_9A48_455D_A41E_C6306A59F0CB__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#include <string> 
#include "cmdline.h" 
 
 
class CRoxen   
{ 
public: 
  CRoxen(int console); 
  virtual ~CRoxen(); 
  int Start(int first_time); 
  int Stop(BOOL write_stop_file); 
  HANDLE GetProcess() { return hProcess; } 
  HANDLE *GetProcessList() { return &hProcess; } 
  int GetProcessCount() { return 1; } 
 
  static void PrintVersion(); 
 
  static BOOL RunPike(const char *cmdline, BOOL wait=TRUE); 
  static BOOL CheckVersionChange(); 
 
  //impl 
private: 
  static void ErrorMsg (int show_last_err, const TCHAR *fmt, ...); 
  static std::string FindPike(BOOL setEnv = FALSE); 
  static std::string FindJvm(); 
  static void SetEnvFromIni(); 
  BOOL CreatePikeCmd(char *cmd, std::string pikeloc, CCmdLine &cmdline, char *key); 
  std::string RotateLogs(std::string logdir); 
 
  //data 
private: 
  char key[9]; 
  int console_mode;   
  HANDLE hProcess; 
}; 
 
#endif // !defined(AFX_ROXEN_H__687F3297_9A48_455D_A41E_C6306A59F0CB__INCLUDED_)