IDEMPIERE-3653 1004207 Change behavior of system cacheing for multi-tenants. Remove unuse file.

This commit is contained in:
Heng Sin Low 2014-08-19 17:16:39 +08:00
parent 476c98a4b4
commit d94e3f8840
2 changed files with 0 additions and 509 deletions

View File

@ -1,257 +0,0 @@
/******************************************************************************
* Product: Adempiere ERP & CRM Smart Business Solution *
* Copyright (C) 1999-2006 ComPiere, Inc. All Rights Reserved. *
* This program is free software; you can redistribute it and/or modify it *
* under the terms version 2 of the GNU General Public License as published *
* by the Free Software Foundation. This program is distributed in the hope *
* that it will be useful, but WITHOUT ANY WARRANTY; without even the implied *
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
* See the GNU General Public License for more details. *
* You should have received a copy of the GNU General Public License along *
* with this program; if not, write to the Free Software Foundation, Inc., *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
* For the text or an alternative of this public license, you may reach us *
* ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
* or via info@compiere.org or http://www.compiere.org/license.html *
*****************************************************************************/
package org.compiere.process;
import java.sql.Timestamp;
import java.util.logging.Level;
import org.compiere.model.PO;
import org.compiere.util.CLogger;
/**
* Adempiere Server Base
*
* @author Jorg Janke
* @version $Id: AdempiereServer.java,v 1.2 2006/07/30 00:54:44 jjanke Exp $
*/
public abstract class AdempiereServer extends Thread
{
/**
* AdempiereServer
* @param name server name
*/
public AdempiereServer (String name)
{
super (s_threadGroup, name);
} // AdempiereServer
/** Thread Group */
private static ThreadGroup s_threadGroup = new ThreadGroup("AdempiereServer");
/** Logger */
protected CLogger log = CLogger.getCLogger(getClass());
/** Working Status */
private volatile boolean m_working = false;
/** Working Count */
private int m_count = 0;
/** Poll Count */
private int m_pollCount = 0;
/** Working Time (ms) */
private volatile int m_time = 0;
/** Work Start */
private volatile long m_start = 0;
/** Last Work Start */
private volatile long m_lastStart = 0;
/** Sleep Seconds */
private int m_sleepSeconds = 10;
/** Processor Instance */
protected PO p_processor = null;
/** Server can continue */
private boolean m_canContinue = true;
/**
* Is Working
* @return true if working
*/
public boolean isWorking()
{
return m_working;
} // isWorking
/**
* Get Poll Count
* @return number of polls
*/
public int getPollCount()
{
return m_pollCount;
} // getPollCount
/**
* Get Work Count
* @return number of work runs
*/
public int getWorkCount()
{
return m_count;
} // getWorkCount
/**
* Get Working Time
* @return working time in ms
*/
public int getWorkTime()
{
return m_time;
} // getWorkTime
/**
* Get Start of Server
* @return start of server
*/
public Timestamp getStart()
{
if (m_start == 0)
return null;
return new Timestamp (m_start);
} // getStart
/**
* Get Last Start of Server
* @return last start of server
*/
public Timestamp getLastStart()
{
if (m_lastStart == 0)
return null;
return new Timestamp (m_lastStart);
} // getLastStart
/**
* Get Sleep Seconds
* @return sleep seconds
*/
public int getSleepSeconds ()
{
return m_sleepSeconds;
} // getSleepSeconds
/**
* Set Sleep Seconds
* @param sleepSeconds sleep seconds
*/
public void setSleepSeconds (int sleepSeconds)
{
m_sleepSeconds = sleepSeconds;
} // setSleepSeconds
/**
* Set Server Processor
* @param processor processor
*/
public void setProcessor (PO processor)
{
p_processor = processor;
setName(getProcessorName());
} // setProcessor
/**
* Statistics
* @return info
*/
public String getStatistics ()
{
StringBuilder sb = new StringBuilder ();
sb.append("Alive=").append(isAlive())
.append(", Start=").append(getStart())
.append(", WorkCount=").append(getWorkCount())
.append(", WorkTime=").append(getWorkTime())
.append(", PollCount=").append(getPollCount())
.append(", Working=").append(isWorking())
.append(", Last=").append(getLastStart())
// .append(", SleepSec=").append(getSleepSeconds())
;
return sb.toString ();
} // toString
/**
* String Representation
* @return info
*/
public String toString ()
{
StringBuilder sb = new StringBuilder ("AdempiereServer[");
sb.append(getStatistics()).append ("]");
return sb.toString ();
} // toString
/**************************************************************************
* Run - Do the Work
* @see java.lang.Runnable#run()
*/
public final void run ()
{
if (m_start == 0)
m_start = System.currentTimeMillis();
m_canContinue = true;
while (m_canContinue)
{
if (isInterrupted())
return;
/********************/
m_lastStart = System.currentTimeMillis();
m_working = true;
try
{
m_pollCount++;
if (canDoWork())
{
m_canContinue = doWork();
m_count++;
}
}
catch (Exception e)
{
log.log(Level.SEVERE, "run", e);
}
m_working = false;
long end = System.currentTimeMillis();
m_time += (end - m_lastStart);
/********************/
if (isInterrupted())
return;
try
{
if (log.isLoggable(Level.FINE)) log.fine("sleeping ... " + m_sleepSeconds);
sleep (m_sleepSeconds*1000);
}
catch (InterruptedException e1)
{
log.warning("run - " + e1.getLocalizedMessage());
return;
}
} // while
} // run
/**
* Get Processor Name
* @return Processor Name
*/
public abstract String getProcessorName();
/**
* Is there work for the Worker?
* @return true if doWork should be called
*/
public abstract boolean canDoWork();
/**
* Worker - do the work
* @return true if worker can continue
*/
public abstract boolean doWork();
} // AdempiereServer

View File

@ -1,252 +0,0 @@
/******************************************************************************
* Product: Adempiere ERP & CRM Smart Business Solution *
* Copyright (C) 1999-2006 ComPiere, Inc. All Rights Reserved. *
* This program is free software; you can redistribute it and/or modify it *
* under the terms version 2 of the GNU General Public License as published *
* by the Free Software Foundation. This program is distributed in the hope *
* that it will be useful, but WITHOUT ANY WARRANTY; without even the implied *
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
* See the GNU General Public License for more details. *
* You should have received a copy of the GNU General Public License along *
* with this program; if not, write to the Free Software Foundation, Inc., *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
* For the text or an alternative of this public license, you may reach us *
* ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
* or via info@compiere.org or http://www.compiere.org/license.html *
*****************************************************************************/
package org.compiere.process;
import java.util.logging.Level;
import org.compiere.model.PO;
/**
* Adempiere Service.
* Instanciates and Controls the Adempiere Server,
* which actually does the work in separate thread
*
* @author Jorg Janke
* @version $Id: AdempiereService.java,v 1.2 2006/07/30 00:54:44 jjanke Exp $
*/
public class AdempiereService extends StateEngine
{
/**
* Adempiere Service
* @param processor Processor instance
* @param serverClass server class
*/
public AdempiereService (PO processor, Class<?> serverClass)
{
super ();
m_processor = processor;
m_serverClass = serverClass;
} // AdempiereServer
/** Adempiere Server(s) */
private AdempiereServer m_server = null;
/** Adempiere Server Class */
private Class<?> m_serverClass = null;
/** Adempiere Server Processor Instance */
private PO m_processor = null;
/**
* Get Compier Server
* @return Adempiere Server
*/
public AdempiereServer getCompierServer()
{
getState();
return m_server;
} // getAdempiereServer
/**
* Get/Check State
* @return state
*/
public String getState ()
{
if (isRunning())
{
if (m_server == null || !m_server.isAlive())
terminate();
}
return super.getState ();
} // getState
/**
* Start: not started -> running
* @return true if set to running
*/
public boolean start()
{
if (!super.start())
return false;
boolean ok = false;
try
{
m_server = (AdempiereServer)m_serverClass.newInstance();
m_server.setProcessor (m_processor);
m_server.start();
ok = true;
}
catch (Exception e)
{
log.log(Level.SEVERE, "start", e);
ok = false;
}
if (!ok)
return abort();
if (log.isLoggable(Level.INFO)) log.info("start - " + ok);
getState();
return ok;
} // start
/**
* Resume: suspended -> running
* @return true if set to sunning
*/
public boolean resume()
{
if (!super.resume())
return false;
boolean ok = false;
try
{
m_server = (AdempiereServer)m_serverClass.newInstance();
m_server.setProcessor (m_processor);
m_server.start();
ok = true;
}
catch (Exception e)
{
log.log(Level.SEVERE, "resume", e);
ok = false;
}
if (!ok)
return abort();
if (log.isLoggable(Level.INFO)) log.info("resume - " + ok);
getState();
return ok;
} // resume
/**
* Complete: running -> completed
* @return true if set to completed
*/
public boolean complete()
{
if (!super.complete())
return false;
boolean ok = false;
if (m_server != null && m_server.isAlive())
{
try
{
m_server.interrupt();
m_server.join();
ok = true;
}
catch (Exception e)
{
return abort();
}
}
if (log.isLoggable(Level.INFO)) log.info("complete - " + ok);
return ok;
} // complete
/**
* Suspend: running -> suspended
* @return true if suspended
*/
public boolean suspend()
{
if (!super.suspend())
return false;
boolean ok = false;
if (m_server != null && m_server.isAlive())
{
try
{
m_server.interrupt();
m_server.join();
ok = true;
}
catch (Exception e)
{
return abort();
}
}
if (log.isLoggable(Level.INFO)) log.info("suspend - " + ok);
return ok;
} // suspend
/**
* Abort: open -> aborted
* @return true if set to aborted
*/
public boolean abort() // raises CannotStop, NotRunning
{
if (super.abort())
{
if (m_server != null && m_server.isAlive())
{
try
{
m_server.interrupt();
}
catch (Exception e)
{
}
}
log.info("abort - done");
return true;
}
return false;
} // abort
/**
* Terminate (System Error): open -> terminated
* @return true if set to terminated
*/
public boolean terminate()
{
if (super.terminate())
{
if (m_server != null && m_server.isAlive())
{
try
{
m_server.interrupt();
}
catch (Exception e)
{
}
}
log.info("terminate - done");
return true;
}
return false;
} // terminate
/**
* String Representation
* @return info
*/
public String toString ()
{
StringBuilder sb = new StringBuilder ("AdempiereService[");
sb.append(getStateInfo())
.append(" - ").append(m_server);
sb.append ("]");
return sb.toString ();
} // toString
} // AdempiereService