From c924380a2d612ac29337fb085195aea1a31ff563 Mon Sep 17 00:00:00 2001 From: Ilias Date: Tue, 12 Mar 2013 12:07:52 +0100 Subject: [PATCH] Refactoring System.out.println in deeco core code base to use logging methods instead --- .../invokable/OutputParametersHelper.java | 3 +- .../deeco/invokable/ParameterizedMethod.java | 3 +- .../SchedulableComponentProcess.java | 11 +++--- .../invokable/SchedulableEnsembleProcess.java | 11 +++--- .../deeco/invokable/SchedulableProcess.java | 7 ++-- .../knowledge/LoggingKnowledgeManager.java | 23 ++++++------ .../knowledge/RepositoryKnowledgeManager.java | 5 +-- .../deeco/knowledge/jini/ChangeNotifier.java | 7 ++-- .../mff/d3s/deeco/knowledge/jini/Lookup.java | 4 ++- .../knowledge/jini/TSKnowledgeRepository.java | 9 ++--- .../knowledge/jini/TSRemoteEventListener.java | 5 +-- .../mff/d3s/deeco/knowledge/jini/TSUtils.java | 4 +-- .../knowledge/jini/TransactionalSession.java | 10 +++--- .../cuni/mff/d3s/deeco/logging/ILogger.java | 36 ++++++++++++++++--- .../mff/d3s/deeco/logging/StandardLogger.java | 23 +++++++++--- .../d3s/deeco/path/grammar/KnowledgePath.java | 3 +- .../mff/d3s/deeco/processor/ClassFinder.java | 4 ++- .../d3s/deeco/processor/ClassProcessor.java | 3 +- .../d3s/deeco/processor/ComponentParser.java | 4 +-- .../d3s/deeco/processor/JarClassUtils.java | 4 ++- .../deeco/processor/ParsedObjectReader.java | 4 +-- .../deeco/processor/ParsedObjectWriter.java | 3 +- .../provider/ClassDEECoObjectProvider.java | 4 +-- .../provider/FileDEECoObjectProvider.java | 3 +- .../deeco/runtime/PreprocessorLauncher.java | 3 +- .../cuni/mff/d3s/deeco/runtime/Runtime.java | 8 ++--- .../scheduling/MultithreadedScheduler.java | 3 +- 27 files changed, 133 insertions(+), 74 deletions(-) diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/OutputParametersHelper.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/OutputParametersHelper.java index 9cb5e0b94..43ce2154b 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/OutputParametersHelper.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/OutputParametersHelper.java @@ -15,6 +15,7 @@ import cz.cuni.mff.d3s.deeco.knowledge.OutWrapper; import cz.cuni.mff.d3s.deeco.knowledge.StructureHelper; import cz.cuni.mff.d3s.deeco.knowledge.TypeUtils; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; public class OutputParametersHelper implements Serializable { @@ -54,7 +55,7 @@ public void storeOutValue(String knowledgePath, Object orgValue, storeOutValue(knowledgePath, ((OutWrapper) orgValue).item, ((OutWrapper) newValue).item, km, session); else - System.out.println("Something is wrong!"); + LoggerFactory.getLogger().info("Something is wrong!"); } else if (!(TypeUtils.isList(nvClass) || TypeUtils.isList(ovClass))) { Object [] nvStructure = StructureHelper .getStructureFromObject(newValue), ovStructure = StructureHelper diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/ParameterizedMethod.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/ParameterizedMethod.java index 0c8167b7f..3c324542d 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/ParameterizedMethod.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/ParameterizedMethod.java @@ -19,6 +19,7 @@ import java.lang.reflect.Method; import java.util.List; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.processor.MethodDescription; /** @@ -115,7 +116,7 @@ public Object invoke(Object[] parameters) { try { return getMethod().invoke(null, parameters); } catch (Exception e) { - System.out.println("Method invocation error: " + e.getMessage()); + LoggerFactory.getLogger().severe("Method invocation error",e); return null; } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableComponentProcess.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableComponentProcess.java index bc3025d00..b1f5a8ff9 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableComponentProcess.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableComponentProcess.java @@ -21,6 +21,7 @@ import cz.cuni.mff.d3s.deeco.exceptions.KMException; import cz.cuni.mff.d3s.deeco.knowledge.ISession; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeManager; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.ETriggerType; import cz.cuni.mff.d3s.deeco.scheduling.ProcessSchedule; @@ -55,7 +56,7 @@ public SchedulableComponentProcess(KnowledgeManager km, ProcessSchedule scheduli */ @Override public void invoke(String triggererId, ETriggerType recipientMode) { - //System.out.println("Component process starts - " + this.toString()); + //LoggerFactory.getLogger().fine("Component process starts - " + this.toString()); try { if (lockingMode.equals(ELockingMode.STRONG)) { ISession session = km.createSession(); @@ -66,21 +67,21 @@ public void invoke(String triggererId, ETriggerType recipientMode) { session.end(); } } catch (KMException e) { - System.out.println(e.getMessage()); + LoggerFactory.getLogger().severe("",e); session.cancel(); } } else { try { evaluateMethod(); } catch (KMException kme) { - System.out.println("SCP message - " + kme.getMessage()); + LoggerFactory.getLogger().severe("SCP message error",kme); kme.printStackTrace(); } } } catch (Exception e) { - System.out.println(e.getMessage()); + LoggerFactory.getLogger().severe("",e); } - //System.out.println("Component process ends - " + this.toString()); + //LoggerFactory.getLogger().fine("Component process ends - " + this.toString()); } private void evaluateMethod() throws KMException { diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableEnsembleProcess.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableEnsembleProcess.java index 619403b9b..ff9a851ff 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableEnsembleProcess.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableEnsembleProcess.java @@ -22,6 +22,7 @@ import cz.cuni.mff.d3s.deeco.knowledge.ConstantKeys; import cz.cuni.mff.d3s.deeco.knowledge.ISession; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeManager; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.ETriggerType; import cz.cuni.mff.d3s.deeco.scheduling.ProcessSchedule; @@ -71,7 +72,7 @@ public SchedulableEnsembleProcess(KnowledgeManager km, ProcessSchedule schedulin */ @Override public void invoke(String triggererId, ETriggerType recipientMode) { - // System.out.println("Ensembling starts"); + // LoggerFactory.getLogger().fine("Ensembling starts"); try { Object[] ids = (Object[]) km .getKnowledge(ConstantKeys.ROOT_KNOWLEDGE_ID); @@ -82,7 +83,7 @@ public void invoke(String triggererId, ETriggerType recipientMode) { singleInvocation(triggererId, recipientMode, ids); } catch (KMException kme) { } - // System.out.println("Ensembling ends"); + // LoggerFactory.getLogger().fine("Ensembling ends"); } catch (KMException kme) { return; } @@ -147,8 +148,7 @@ private boolean evaluateMembership(ParametersPair[] params) { Object[] parameterValues = ParametersPair.extractValues(params); return membership.membership(parameterValues); } catch (Exception e) { - System.out.println("Ensemble membership exception! - " - + e.getMessage()); + LoggerFactory.getLogger().severe("Ensemble membership exception",e); return false; } } @@ -158,8 +158,7 @@ private void evaluateKnowledgeExchange(ParametersPair[] params) { Object[] parameterValues = ParametersPair.extractValues(params); knowledgeExchange.invoke(parameterValues); } catch (Exception e) { - System.out.println("Ensemble evaluation exception! - " - + e.getMessage()); + LoggerFactory.getLogger().severe("Ensemble evaluation exception",e); } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableProcess.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableProcess.java index c210555ad..e002d3ad8 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableProcess.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/invokable/SchedulableProcess.java @@ -23,6 +23,7 @@ import cz.cuni.mff.d3s.deeco.knowledge.ISession; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeManager; import cz.cuni.mff.d3s.deeco.knowledge.local.DeepCopy; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.ETriggerType; import cz.cuni.mff.d3s.deeco.scheduling.ProcessPeriodicSchedule; import cz.cuni.mff.d3s.deeco.scheduling.ProcessSchedule; @@ -128,13 +129,11 @@ protected ParametersPair[] getParameterMethodValues(List in, } return result; } catch (KMException kme) { - // System.out.println("Parameter getting error!: " + - // kme.getMessage()); if (session == null) localSession.cancel(); throw kme; } catch (Exception e) { - System.out.println(e.getMessage()); + LoggerFactory.getLogger().severe("",e); return null; } } @@ -209,7 +208,7 @@ protected void putParameterMethodValues(ParametersPair[] parameterValues, } catch (Exception e) { if (session == null) localSession.cancel(); - System.out.println(e.getMessage()); + LoggerFactory.getLogger().severe("",e); } } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/LoggingKnowledgeManager.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/LoggingKnowledgeManager.java index cf5dbbb1f..0d2efe94b 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/LoggingKnowledgeManager.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/LoggingKnowledgeManager.java @@ -1,6 +1,7 @@ package cz.cuni.mff.d3s.deeco.knowledge; import cz.cuni.mff.d3s.deeco.exceptions.KMException; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.IKnowledgeChangeListener; public class LoggingKnowledgeManager extends KnowledgeManager { @@ -15,40 +16,40 @@ public LoggingKnowledgeManager(KnowledgeManager decoratedKm) { @Override public Object getKnowledge(String knowledgePath, ISession session) throws KMException { - System.out.println("LoggingKnowledgeManager.getKnowledge(knowledgePath=" + knowledgePath +", session=" + session + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.getKnowledge(knowledgePath=" + knowledgePath +", session=" + session + ")"); return decoratedKm.getKnowledge(knowledgePath, session); } @Override public Object takeKnowledge(String knowledgePath, ISession session) throws KMException { - System.out.println("LoggingKnowledgeManager.takeKnowledge(knowledgePath=" + knowledgePath +", session=" + session + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.takeKnowledge(knowledgePath=" + knowledgePath +", session=" + session + ")"); return decoratedKm.takeKnowledge(knowledgePath, session); } @Override public void alterKnowledge(String knowledgePath, Object value, ISession session) throws KMException { - System.out.println("LoggingKnowledgeManager.alterKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ", session=" + session + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.alterKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ", session=" + session + ")"); decoratedKm.alterKnowledge(knowledgePath, value, session); } @Override public void putKnowledge(String knowledgePath, Object value, ISession session) throws KMException { - System.out.println("LoggingKnowledgeManager.putKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ", session=" + session + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.putKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ", session=" + session + ")"); decoratedKm.putKnowledge(knowledgePath, value, session); } @Override public ISession createSession() { - System.out.println("LoggingKnowledgeManager.createSession()"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.createSession()"); return decoratedKm.createSession(); } @Override public boolean registerListener(IKnowledgeChangeListener listener) { - System.out.println("LoggingKnowledgeManager.registerListener(listener=" + listener + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.registerListener(listener=" + listener + ")"); return decoratedKm.unregisterListener(listener); } @@ -60,33 +61,33 @@ public boolean unregisterListener(IKnowledgeChangeListener listener) { @Override public void setListenersActive(boolean on) { - System.out.println("LoggingKnowledgeManager.switchListening(on=" + on + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.switchListening(on=" + on + ")"); decoratedKm.setListenersActive(on); } @Override public Object getKnowledge(String knowledgePath) throws KMException { - System.out.println("LoggingKnowledgeManager.getKnowledge(knowledgePath=" + knowledgePath + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.getKnowledge(knowledgePath=" + knowledgePath + ")"); return decoratedKm.getKnowledge(knowledgePath); } @Override public Object takeKnowledge(String knowledgePath) throws KMException { - System.out.println("LoggingKnowledgeManager.takeKnowledge(knowledgePath=" + knowledgePath + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.takeKnowledge(knowledgePath=" + knowledgePath + ")"); return decoratedKm.takeKnowledge(knowledgePath); } @Override public void alterKnowledge(String knowledgePath, Object value) throws KMException { - System.out.println("LoggingKnowledgeManager.alterKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.alterKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ")"); decoratedKm.alterKnowledge(knowledgePath, value); } @Override public void putKnowledge(String knowledgePath, Object value) throws KMException { - System.out.println("LoggingKnowledgeManager.putKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ")"); + LoggerFactory.getLogger().fine("LoggingKnowledgeManager.putKnowledge(knowledgePath=" + knowledgePath +", value=" + value + ")"); decoratedKm.putKnowledge(knowledgePath, value); } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/RepositoryKnowledgeManager.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/RepositoryKnowledgeManager.java index 263f30f87..b938fbd55 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/RepositoryKnowledgeManager.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/RepositoryKnowledgeManager.java @@ -25,6 +25,7 @@ import cz.cuni.mff.d3s.deeco.exceptions.KMNotExistentException; import cz.cuni.mff.d3s.deeco.exceptions.KRExceptionAccessError; import cz.cuni.mff.d3s.deeco.exceptions.KRExceptionUnavailableEntry; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.IKnowledgeChangeListener; /* @@ -199,7 +200,7 @@ else if (structure.length > 0) { throw new KMAccessException(kre.getMessage()); } catch (Exception e) { localSession.cancel(); - System.out.println(e.getMessage()); + LoggerFactory.getLogger().severe("",e); } } @@ -266,7 +267,7 @@ private Object getKnowledge(boolean withdrawal, String knowledgePath, localSession.cancel(); throw new KMAccessException(kre.getMessage()); } catch (Exception e) { - System.out.println(e.getMessage()); + LoggerFactory.getLogger().severe("",e); localSession.cancel(); return null; } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/ChangeNotifier.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/ChangeNotifier.java index cee61bb17..4dc2361c2 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/ChangeNotifier.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/ChangeNotifier.java @@ -9,6 +9,7 @@ import cz.cuni.mff.d3s.deeco.knowledge.ConstantKeys; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgePathHelper; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeRepository; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.path.grammar.EEnsembleParty; public class ChangeNotifier { @@ -68,7 +69,7 @@ public void notifyAboutChanges(TransactionalSession session) { updateVersion(listenPath, session, newVersion); } } catch (KRExceptionAccessError kre) { - System.out.println("Knowledge Repository communication exception!"); + LoggerFactory.getLogger().severe("Knowledge Repository communication exception",kre); } notifying = false; } @@ -79,9 +80,9 @@ private void updateVersion(String path, TransactionalSession session, Object value = kr.take(path, session); value = newVersion; kr.put(path, value, session); - System.out.println("Updating: " + path); + LoggerFactory.getLogger().info("Updating: " + path); } catch (KRExceptionUnavailableEntry uee) { - //System.out.println("Updating error: " + path); + //LoggerFactory.getLogger().severe("Updating error: " + path); } } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/Lookup.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/Lookup.java index cc8c89ddc..819cfdfb9 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/Lookup.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/Lookup.java @@ -19,6 +19,8 @@ import java.rmi.RemoteException; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; + import net.jini.core.lookup.ServiceRegistrar; import net.jini.core.lookup.ServiceTemplate; @@ -167,6 +169,6 @@ public void discovered(DiscoveryEvent anEvent) { new ServiceRegistrars, we do nothing here. */ public void discarded(DiscoveryEvent anEvent) { - System.out.println("Disappeared"); + LoggerFactory.getLogger().info("Disappeared"); } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSKnowledgeRepository.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSKnowledgeRepository.java index 2cda31c65..a4fd37185 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSKnowledgeRepository.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSKnowledgeRepository.java @@ -33,6 +33,7 @@ import cz.cuni.mff.d3s.deeco.knowledge.ISession; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgePathHelper; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeRepository; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.IKnowledgeChangeListener; /** @@ -94,7 +95,7 @@ public Object[] take(String entryKey, ISession session) if (resultList.size() == 0) throw new KRExceptionUnavailableEntry("Entry " + entryKey + " unavailable!"); - //System.out.println("Taking: " + entryKey); + //LoggerFactory.getLogger().fine("Taking: " + entryKey); return resultList.toArray(); } @@ -148,7 +149,7 @@ public void put(String entryKey, Object value, ISession session) Transaction tx = (session != null) ? ((TransactionalSession) session) .getTransaction() : null; space.write(TSUtils.createTuple(entryKey, value), tx, Lease.FOREVER); - //System.out.println("Writing entry: " + entryKey); + //LoggerFactory.getLogger().fine("Writing entry: " + entryKey); if (session != null) ((TransactionalSession) session).propertyChanged(entryKey, this); } catch (Exception e) { @@ -156,7 +157,7 @@ public void put(String entryKey, Object value, ISession session) "TSKnowledgeRepository error when writing property: " + entryKey + " - " + e.getMessage()); } - //System.out.println("Putting: " + entryKey); + //LoggerFactory.getLogger().fine("Putting: " + entryKey); } /* @@ -229,7 +230,7 @@ private void addTSNotifier(String kp, TSRemoteEventListener tsListener) space.registerForAvailabilityEvent( Arrays.asList(new Tuple[] { TSUtils.createTemplate(fullListenPath) }), null, true, tsListener.getStub(), Lease.FOREVER, null); - System.out.println("Listener added: " + fullListenPath); + LoggerFactory.getLogger().info("Listener added: " + fullListenPath); } catch (Exception e) { throw new KRExceptionAccessError( "TSKnowledgeRepository error when adding a listener for the property: " diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSRemoteEventListener.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSRemoteEventListener.java index 0ae1c2151..8b086ab2e 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSRemoteEventListener.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSRemoteEventListener.java @@ -18,6 +18,7 @@ import net.jini.space.AvailabilityEvent; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgePathHelper; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeRepository; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.ETriggerType; import cz.cuni.mff.d3s.deeco.scheduling.IKnowledgeChangeListener; @@ -75,7 +76,7 @@ public void notify(RemoteEvent re) throws UnknownEventException, tObjects = kr.get(t.key, ts); stringVersionAndOwner = (String) tObjects[0]; versionOwner = extractVersionOwner(stringVersionAndOwner); - // System.out.println("Triggered: " + t.key + " " + + // LoggerFactory.getLogger().fine("Triggered: " + t.key + " " + // stringVersionAndOwner); if (versionOwner != null) { version = versionOwner[0]; @@ -95,7 +96,7 @@ public void notify(RemoteEvent re) throws UnknownEventException, } catch (Exception e) { if (ts != null) ts.cancel(); - System.out.println("Notification exception: " + e.getMessage()); + LoggerFactory.getLogger().severe("Notification exception",e); } } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSUtils.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSUtils.java index f2d19ba63..a7c2e4810 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSUtils.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TSUtils.java @@ -15,6 +15,7 @@ ******************************************************************************/ package cz.cuni.mff.d3s.deeco.knowledge.jini; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import net.jini.space.JavaSpace05; /** @@ -40,8 +41,7 @@ public synchronized static JavaSpace05 getSpace() { } return space; } catch (Exception e) { - System.out.println("ERROR - Space retrieval error: " - + e.getMessage()); + LoggerFactory.getLogger().severe("Space retrieval error",e); return null; } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TransactionalSession.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TransactionalSession.java index 4a1a2b49a..8d801d76c 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TransactionalSession.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/jini/TransactionalSession.java @@ -20,6 +20,7 @@ import net.jini.core.transaction.server.TransactionManager; import cz.cuni.mff.d3s.deeco.knowledge.ISession; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeRepository; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; /** * Class implementing session functionalities, using transaction. @@ -47,7 +48,7 @@ public class TransactionalSession implements ISession { */ @Override public void begin() { - //System.out.println("Session starts - " + this.toString()); + //LoggerFactory.getLogger().fine("Session starts - " + this.toString()); if (tx != null) { cancel(); } @@ -61,7 +62,7 @@ public void begin() { */ @Override public void end() { - //System.out.println("Session ends - " + this.toString()); + //LoggerFactory.getLogger().fine("Session ends - " + this.toString()); if (tx != null) try { count--; @@ -83,7 +84,7 @@ public void end() { */ @Override public void cancel() { - //System.out.println("Session cancel - " + this.toString()); + //LoggerFactory.getLogger().fine("Session cancel - " + this.toString()); if (tx != null && !succeeded) try { count = 0; @@ -145,8 +146,7 @@ private synchronized Transaction createTransaction() { DEFAULT_TRANSACTION_TIMEOUT); return trc.transaction; } catch (Exception e) { - System.out.println("ERROR - Transaction retrieval error: " - + e.getMessage()); + LoggerFactory.getLogger().severe("Transaction retrieval error",e); return null; } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/ILogger.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/ILogger.java index b97c1ea15..5392a4795 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/ILogger.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/ILogger.java @@ -10,12 +10,21 @@ public interface ILogger { /** - * For reporting exceptions & errors. + * Mainly for debugging reasons. * * @param msg * the string message */ - public void severe(String msg); + public void fine(String msg); + + /** + * Log on the FINE level with associated Throwable information (exception + * message and stack trace). + * + * @param msg + * @param thrown + */ + public void fine(String msg, Throwable thrown); /** * General logging method. @@ -26,11 +35,30 @@ public interface ILogger { public void info(String msg); /** - * For debugging reasons. + * Log on the INFO level with associated Throwable information (exception + * message and stack trace). + * + * @param msg + * @param thrown + */ + public void info(String msg, Throwable thrown); + + /** + * For reporting exceptions & errors without the stack trace. * * @param msg * the string message */ - public void fine(String msg); + public void severe(String msg); + /** + * Log on the SEVERE level with associated Throwable information (exception + * message and stack trace). + * + * @param msg + * the (custom) string message, if any + * @param thrown + * Throwable object (e.g. an Exception) + */ + public void severe(String msg, Throwable thrown); } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/StandardLogger.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/StandardLogger.java index a27a2f658..3f0171c7c 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/StandardLogger.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/logging/StandardLogger.java @@ -2,6 +2,7 @@ import java.io.IOException; import java.io.InputStream; +import java.util.logging.Level; import java.util.logging.LogManager; import java.util.logging.Logger; @@ -41,16 +42,28 @@ public static ILogger getLogger() { return instance; } - public synchronized void severe(String s) { - logger.severe(s); + public synchronized void fine(String s) { + logger.fine(s); + } + + public synchronized void fine(String s, Throwable t) { + logger.log(Level.FINE,s,t); } public synchronized void info(String s) { logger.info(s); } - - public synchronized void fine(String s) { - logger.fine(s); + + public synchronized void info(String s, Throwable t) { + logger.log(Level.INFO,s,t); + } + + public synchronized void severe(String s) { + logger.severe(s); + } + + public synchronized void severe(String s, Throwable t) { + logger.log(Level.SEVERE,s,t); } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/path/grammar/KnowledgePath.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/path/grammar/KnowledgePath.java index 581427fdc..503e6f83d 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/path/grammar/KnowledgePath.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/path/grammar/KnowledgePath.java @@ -5,6 +5,7 @@ import cz.cuni.mff.d3s.deeco.exceptions.KMException; import cz.cuni.mff.d3s.deeco.knowledge.ISession; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeManager; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; public class KnowledgePath implements Serializable { @@ -21,7 +22,7 @@ public String getEvaluatedPath(KnowledgeManager km, String coord, try { return evaluatePath(pathNode, km, coord, member, session); } catch (KMException kme) { - System.out.println("Knowledge path evaluation error!"); + LoggerFactory.getLogger().severe("Knowledge path evaluation error",kme); return null; } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassFinder.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassFinder.java index ba37574b6..05d84d586 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassFinder.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassFinder.java @@ -5,6 +5,8 @@ import java.util.LinkedList; import java.util.List; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; + import static cz.cuni.mff.d3s.deeco.processor.JarClassUtils.getClassNamesFromJar; import static cz.cuni.mff.d3s.deeco.processor.JarClassUtils.getClassNamesFromDir; @@ -33,7 +35,7 @@ public void resolve(String [] paths) { } } } catch (Exception e) { - System.out.println("Parsing exception: "); + LoggerFactory.getLogger().severe("Parsing exception",e); } } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassProcessor.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassProcessor.java index 2a4d51c7d..ad109437f 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassProcessor.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ClassProcessor.java @@ -5,6 +5,7 @@ import java.net.URLClassLoader; import java.util.List; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.provider.ClassDEECoObjectProvider; public class ClassProcessor { @@ -31,7 +32,7 @@ public static ClassDEECoObjectProvider processClasses(List classes, clazz = Class.forName(cs ,true, cl); result.addDEECoObjectClass(clazz); } catch (Exception e) { - System.out.println("Parsing exception:"); + LoggerFactory.getLogger().severe("Parsing exception",e); e.printStackTrace(); } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ComponentParser.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ComponentParser.java index 57e64c0bc..d1fa85370 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ComponentParser.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ComponentParser.java @@ -7,7 +7,6 @@ import java.util.LinkedList; import java.util.List; import java.util.UUID; - import cz.cuni.mff.d3s.deeco.annotations.DEECoComponent; import cz.cuni.mff.d3s.deeco.annotations.DEECoInitialize; import cz.cuni.mff.d3s.deeco.annotations.PeriodicScheduling; @@ -19,6 +18,7 @@ import cz.cuni.mff.d3s.deeco.invokable.SchedulableComponentProcess; import cz.cuni.mff.d3s.deeco.knowledge.Component; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeManager; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.scheduling.ProcessPeriodicSchedule; import cz.cuni.mff.d3s.deeco.scheduling.ProcessSchedule; @@ -158,7 +158,7 @@ public static List extractInitialKnowledge(Class c) { e.printStackTrace(); } } - System.out.println("No initial state can be retrieved for the component: " + c); + LoggerFactory.getLogger().info("No initial state can be retrieved for the component: " + c); return null; } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/JarClassUtils.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/JarClassUtils.java index 86d56b903..224239de8 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/JarClassUtils.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/JarClassUtils.java @@ -10,6 +10,8 @@ import org.apache.bcel.classfile.ClassParser; import org.apache.bcel.classfile.JavaClass; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; + public class JarClassUtils { public static List getClassNamesFromJar(String jarPath) { try { @@ -56,7 +58,7 @@ else if (classFef.accept(f.getParentFile(), f.getName())) { try { cp = new ClassParser(f.getAbsolutePath()); result.add(cp.parse().getClassName()); - System.out.println("File found: " + f.getName()); + LoggerFactory.getLogger().info("File found: " + f.getName()); } catch (Exception e) { } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectReader.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectReader.java index cf0464c03..e4ced2fab 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectReader.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectReader.java @@ -7,6 +7,7 @@ import java.io.ObjectInputStream; import cz.cuni.mff.d3s.deeco.knowledge.ConstantKeys; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.provider.AbstractDEECoObjectProvider; public class ParsedObjectReader { @@ -38,8 +39,7 @@ public AbstractDEECoObjectProvider read() { oi.close(); } } catch (Exception e) { - System.out.println("Error when reading"); - e.printStackTrace(); + LoggerFactory.getLogger().severe("Error when reading",e); return result; } return result; diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectWriter.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectWriter.java index c7a9041ea..0ed7098c2 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectWriter.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/processor/ParsedObjectWriter.java @@ -7,6 +7,7 @@ import java.io.OutputStream; import cz.cuni.mff.d3s.deeco.knowledge.ConstantKeys; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.provider.ClassDEECoObjectProvider; public class ParsedObjectWriter { @@ -37,7 +38,7 @@ public boolean write(ClassDEECoObjectProvider cdop) { oo.close(); } } catch (Exception e) { - System.out.println("Error when writing"); + LoggerFactory.getLogger().severe("Error when writing",e); return false; } return true; diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/ClassDEECoObjectProvider.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/ClassDEECoObjectProvider.java index 4f8c37fe4..3651b1381 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/ClassDEECoObjectProvider.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/ClassDEECoObjectProvider.java @@ -11,6 +11,7 @@ import cz.cuni.mff.d3s.deeco.invokable.SchedulableEnsembleProcess; import cz.cuni.mff.d3s.deeco.knowledge.Component; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.path.grammar.ParseException; /** @@ -90,8 +91,7 @@ protected synchronized void processEnsembles() { try { ensembles.add(extractEnsembleProcess(c)); } catch (ParseException e) { - //TODO: use logging - System.out.println(String.format("Parsing error in class '%s': %s", c.getName(), e.getMessage())); + LoggerFactory.getLogger().severe(String.format("Parsing error in class '%s': %s", c.getName(), e.getMessage()),e); } } } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/FileDEECoObjectProvider.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/FileDEECoObjectProvider.java index 4a75b2233..4a9ebd7e5 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/FileDEECoObjectProvider.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/provider/FileDEECoObjectProvider.java @@ -1,5 +1,6 @@ package cz.cuni.mff.d3s.deeco.provider; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.processor.ClassFinder; import cz.cuni.mff.d3s.deeco.processor.ClassProcessor; @@ -54,7 +55,7 @@ protected void processEnsembles() { private void processAll() { if (fileName == null || fileName.length() == 0) { - System.out.println("Wrong path"); + LoggerFactory.getLogger().info("Wrong path"); return; } ClassFinder cf = new ClassFinder(); diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/PreprocessorLauncher.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/PreprocessorLauncher.java index fe8b5d472..51dba5f69 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/PreprocessorLauncher.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/PreprocessorLauncher.java @@ -1,5 +1,6 @@ package cz.cuni.mff.d3s.deeco.runtime; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.processor.ClassFinder; import cz.cuni.mff.d3s.deeco.processor.ClassProcessor; import cz.cuni.mff.d3s.deeco.processor.ParsedObjectWriter; @@ -22,7 +23,7 @@ public class PreprocessorLauncher { */ public static void main(String[] args) { if (args == null || args.length == 0) { - System.out.println("Wrong parameter number!"); + LoggerFactory.getLogger().info("Wrong parameter number"); return; } diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/Runtime.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/Runtime.java index 44ce4e83d..c040ac981 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/Runtime.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/runtime/Runtime.java @@ -27,6 +27,7 @@ import cz.cuni.mff.d3s.deeco.knowledge.Component; import cz.cuni.mff.d3s.deeco.knowledge.ConstantKeys; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeManager; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; import cz.cuni.mff.d3s.deeco.provider.AbstractDEECoObjectProvider; import cz.cuni.mff.d3s.deeco.provider.ParsedComponent; import cz.cuni.mff.d3s.deeco.scheduling.IScheduler; @@ -117,10 +118,9 @@ public void registerComponentsAndEnsembles(AbstractDEECoObjectProvider provider) try { initComponentKnowledge(component.getInitialKnowledge(), km); } catch (Exception e){ - System.out.println(String.format( - "Error when initializing knowledge of component %s: %s", - component.getInitialKnowledge().getClass(), - e.getMessage())); + LoggerFactory.getLogger().severe(String.format( + "Error when initializing knowledge of component %s", + component.getInitialKnowledge().getClass()),e); continue; } List componentProcesses = component.getProcesses(); diff --git a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/scheduling/MultithreadedScheduler.java b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/scheduling/MultithreadedScheduler.java index ec7911918..c1d308b50 100644 --- a/jdeeco-core/src/cz/cuni/mff/d3s/deeco/scheduling/MultithreadedScheduler.java +++ b/jdeeco-core/src/cz/cuni/mff/d3s/deeco/scheduling/MultithreadedScheduler.java @@ -11,6 +11,7 @@ import cz.cuni.mff.d3s.deeco.invokable.SchedulableProcess; import cz.cuni.mff.d3s.deeco.invokable.SchedulableProcessTrigger; import cz.cuni.mff.d3s.deeco.knowledge.KnowledgeManager; +import cz.cuni.mff.d3s.deeco.logging.LoggerFactory; public class MultithreadedScheduler extends Scheduler { private Map threads; @@ -83,7 +84,7 @@ public void run() { process.contextClassLoader); process.invoke(); } catch (Exception e) { - System.out.println("Process scheduled exception!"); + LoggerFactory.getLogger().severe("Process scheduled exception",e); } } }