name = "KTLuceneTest";
$this->javaSystem = new Java('java.lang.System');
$this->setJavaBin($this->javaSystem->getProperty('java.home').DS."bin");
$this->setLuceneDIR(SYS_DIR.DS."bin".DS."luceneserver");
$this->setLuceneExe("KTLuceneService.exe");
$this->setJavaJVM();
$this->setLuceneSource("ktlucene.jar");
$this->setLuceneServer("com.knowledgetree.lucene.KTLuceneServer");
$this->setLuceneOut("lucene-out.txt");
$this->setLuceneError("lucene-err.txt");
}
private function setJavaBin($javaBin) {
$this->javaBin = $javaBin;
}
public function getJavaBin() {
return $this->javaBin;
}
private function setLuceneDIR($luceneDir) {
$this->luceneDir = $luceneDir;
}
public function getluceneDir() {
return $this->luceneDir;
}
private function setLuceneExe($luceneExe) {
$this->luceneExe = $this->getluceneDir().DS.$luceneExe;
}
public function getLuceneExe() {
return $this->luceneExe;
}
private function setLuceneSource($luceneSource) {
$this->luceneSource = $this->getluceneDir().DS.$luceneSource;
}
public function getLuceneSource() {
return $this->luceneSource;
}
private function setLuceneServer($luceneServer) {
$this->luceneServer = $luceneServer;
}
public function getLuceneServer() {
return $this->luceneServer;
}
private function setLuceneOut($luceneOut) {
$this->luceneOut = SYS_LOG_DIR.DS.$luceneOut;
}
public function getLuceneOut() {
return $this->luceneOut;
}
private function setLuceneError($luceneError) {
$this->luceneError = SYS_LOG_DIR.DS.$luceneError;
}
public function getLuceneError() {
return $this->luceneError;
}
private function setJavaJVM() {
if(file_exists($this->getJavaBin().DS."client".DS."jvm.dll")) {
$this->javaJVM = $this->getJavaBin().DS."client".DS."jvm.dll";
} elseif (file_exists($this->getJavaBin().DS."server".DS."jvm.dll")) {
$this->javaJVM = $this->getJavaBin().DS."server".DS."jvm.dll";
}
}
public function getJavaJVM() {
return $this->javaJVM;
}
function start() {
// windows
$cmd = "sc start {$this->name}";
// echo "start\n$cmd
";
$response = exec($cmd);
// linux
// zend
}
function stop() {
$cmd = "sc stop {$this->name}";
echo "stop\n$cmd
";
$response = exec($cmd);
}
function install() {
$cmd = $this->luceneExe." -install \"".$this->name."\" \"".$this->javaJVM. "\" -Djava.class.path=\"". $this->luceneSource."\"". " -start ".$this->luceneServer. " -out \"".$this->luceneOut."\" -err \"".$this->luceneError."\" -current \"".$this->luceneDir."\" -auto";
// echo "install\n$cmd
";
$response = exec($cmd);
}
function uninstall() {
$cmd = "sc delete {$this->name}";
// echo "uninstall\n$cmd
";
$response = exec($cmd);
}
}
$lucene = new Lucene();
$lucene->load();
$lucene->install();
$lucene->start();
$lucene->stop();
$lucene->uninstall();
?>