You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ace.apache.org by an...@apache.org on 2013/10/01 14:33:11 UTC

svn commit: r1528066 [1/2] - in /ace/trunk: org.apache.ace.agent.update.itest/ org.apache.ace.agent/ org.apache.ace.agent/src/org/apache/ace/agent/impl/ org.apache.ace.agent/test/org/apache/ace/agent/impl/ org.apache.ace.authentication.itest/ org.apach...

Author: angelos
Date: Tue Oct  1 12:33:09 2013
New Revision: 1528066

URL: http://svn.apache.org/r1528066
Log:
ACE-377 Renamed Log to Feedback in most locations, and introduced a org.apache.ace.log.common project.

Added:
    ace/trunk/org.apache.ace.feedback.common/
    ace/trunk/org.apache.ace.feedback.common/.classpath
    ace/trunk/org.apache.ace.feedback.common/.project
    ace/trunk/org.apache.ace.feedback.common/bnd.bnd
    ace/trunk/org.apache.ace.feedback.common/build.xml
    ace/trunk/org.apache.ace.feedback.common/src/
    ace/trunk/org.apache.ace.feedback.common/src/org/
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/AuditEvent.java
      - copied, changed from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/AuditEvent.java
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Descriptor.java
      - copied, changed from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogDescriptor.java
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Event.java
      - copied, changed from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogEvent.java
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/packageinfo
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/util/
    ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/util/Codec.java
      - copied, changed from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/util/Codec.java
Removed:
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/AuditEvent.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogDescriptor.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogEvent.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/util/Codec.java
Modified:
    ace/trunk/org.apache.ace.agent.update.itest/bnd.bnd
    ace/trunk/org.apache.ace.agent/bnd.bnd
    ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/EventLoggerImpl.java
    ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackChannelImpl.java
    ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackStoreManager.java
    ace/trunk/org.apache.ace.agent/test/org/apache/ace/agent/impl/FeedbackChannelImplTest.java
    ace/trunk/org.apache.ace.authentication.itest/bnd.bnd
    ace/trunk/org.apache.ace.authentication.itest/src/org/apache/ace/it/authentication/LogAuthenticationTest.java
    ace/trunk/org.apache.ace.client.repository.itest/bnd.bnd
    ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/ClientAutomationTest.java
    ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/StatefulTargetRepositoryTest.java
    ace/trunk/org.apache.ace.client.repository/bnd.bnd
    ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/StatefulTargetObject.java
    ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/LogEventComparator.java
    ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetObjectImpl.java
    ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetRepositoryImpl.java
    ace/trunk/org.apache.ace.client.repository/test/org/apache/ace/client/repository/impl/ACE308Test.java
    ace/trunk/org.apache.ace.client.rest.itest/bnd.bnd
    ace/trunk/org.apache.ace.client.rest/bnd.bnd
    ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/LogEventSerializer.java
    ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/RESTClientServlet.java
    ace/trunk/org.apache.ace.configurator.useradmin.itest/bnd.bnd
    ace/trunk/org.apache.ace.deployment.itest/bnd.bnd
    ace/trunk/org.apache.ace.http.itest/bnd.bnd
    ace/trunk/org.apache.ace.log.itest/bnd.bnd
    ace/trunk/org.apache.ace.log.itest/src/org/apache/ace/it/log/LogIntegrationTest.java
    ace/trunk/org.apache.ace.log.server.store.itest/bnd.bnd
    ace/trunk/org.apache.ace.log.server.store.itest/src/org/apache/ace/log/server/store/tests/MongoLogStoreTest.java
    ace/trunk/org.apache.ace.log.server.ui/bnd.bnd
    ace/trunk/org.apache.ace.log.server.ui/src/org/apache/ace/log/server/ui/LogViewerExtension.java
    ace/trunk/org.apache.ace.log/api.bnd
    ace/trunk/org.apache.ace.log/bnd.bnd
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/listener/ListenerImpl.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/server/servlet/LogServlet.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/server/store/LogStore.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/server/store/impl/LogStoreImpl.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/server/store/mongo/MongoLogStore.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/server/task/LogSyncTask.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/target/LogImpl.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/target/store/LogStore.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/target/store/impl/LogStoreImpl.java
    ace/trunk/org.apache.ace.log/src/org/apache/ace/log/target/task/LogSyncTask.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/LogDescriptorTest.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/LogEventTest.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/listener/LogTest.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/server/servlet/LogServletTest.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/server/store/impl/ServerLogStoreTester.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/server/task/LogTaskTest.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/target/store/impl/GatewayLogStoreTest.java
    ace/trunk/org.apache.ace.log/test/org/apache/ace/log/target/task/LogSyncTaskTest.java
    ace/trunk/org.apache.ace.managementagent/bnd.bnd
    ace/trunk/org.apache.ace.useradmin.ui.itest/bnd.bnd
    ace/trunk/run-client/client.bndrun
    ace/trunk/run-server-allinone/server-allinone.bndrun
    ace/trunk/run-server/server.bndrun

Modified: ace/trunk/org.apache.ace.agent.update.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.agent.update.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.agent.update.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.agent.update.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -22,7 +22,8 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;j
 	org.apache.felix.configadmin,\
 	org.apache.ace.http.listener;version=latest,\
 	biz.aQute.bnd,\
-	org.apache.ace.builder;version=latest
+	org.apache.ace.builder;version=latest,\
+	org.apache.ace.log.api;version=latest
 Private-Package: org.apache.ace.agent.itest
 -runee: JavaSE-1.6
 -runvm: -ea

Modified: ace/trunk/org.apache.ace.agent/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.agent/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.agent/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.agent/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -4,15 +4,15 @@ Bundle-Version: 1.0.0
 Bundle-Activator: org.apache.ace.agent.impl.Activator
 
 Private-Package: org.apache.ace.range,\
-	org.apache.ace.log.util,\
-	org.apache.ace.log,\
 	org.apache.ace.agent.impl,\
 	org.apache.ace.agent.updater,\
 	org.apache.felix.deploymentadmin,\
 	org.apache.felix.deploymentadmin.spi,\
 	org.osgi.service.event,\
 	org.osgi.service.log,\
-	org.osgi.util.tracker
+	org.osgi.util.tracker,\
+	org.apache.ace.feedback,\
+	org.apache.ace.feedback.util
 
 # No wildcard import here on purpose. Are you sure the agent must 
 # require an extra external dependency? Probably not...
@@ -36,7 +36,7 @@ javac.debug:  off
 	org.easymock,\
 	org.apache.felix.http.jetty;version=2.2.1,\
 	org.apache.ace.range.api;version=latest,\
-	org.apache.ace.log.api;version=latest
+	org.apache.ace.feedback.common;version=latest
 
 -sources false
 -runfw: org.apache.felix.framework;version='[4.0,5.0)'

Modified: ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/EventLoggerImpl.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/EventLoggerImpl.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/EventLoggerImpl.java (original)
+++ ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/EventLoggerImpl.java Tue Oct  1 12:33:09 2013
@@ -26,7 +26,7 @@ import java.util.concurrent.atomic.Atomi
 import org.apache.ace.agent.AgentConstants;
 import org.apache.ace.agent.EventListener;
 import org.apache.ace.agent.FeedbackChannel;
-import org.apache.ace.log.AuditEvent;
+import org.apache.ace.feedback.AuditEvent;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.BundleEvent;

Modified: ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackChannelImpl.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackChannelImpl.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackChannelImpl.java (original)
+++ ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackChannelImpl.java Tue Oct  1 12:33:09 2013
@@ -43,8 +43,8 @@ import org.apache.ace.agent.FeedbackChan
 import org.apache.ace.agent.IdentificationHandler;
 import org.apache.ace.agent.LoggingHandler;
 import org.apache.ace.agent.RetryAfterException;
-import org.apache.ace.log.LogDescriptor;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Descriptor;
+import org.apache.ace.feedback.Event;
 import org.apache.ace.range.RangeIterator;
 import org.apache.ace.range.SortedRangeSet;
 
@@ -145,7 +145,7 @@ public class FeedbackChannelImpl impleme
         getLoggingHandler().logWarning("feedbackChannel(" + m_name + ")", msg, null, args);
     }
 
-    private LogDescriptor getQueryDescriptor(InputStream queryInput) throws IOException {
+    private Descriptor getQueryDescriptor(InputStream queryInput) throws IOException {
         BufferedReader queryReader = null;
         try {
             queryReader = new BufferedReader(new InputStreamReader(queryInput));
@@ -154,7 +154,7 @@ public class FeedbackChannelImpl impleme
                 throw new IOException("Could not construct LogDescriptor from stream because stream is empty");
             }
             try {
-                return new LogDescriptor(rangeString);
+                return new Descriptor(rangeString);
             }
             catch (IllegalArgumentException e) {
                 throw new IOException("Could not determine highest remote event id, received malformed event range (" + rangeString + ")");
@@ -188,15 +188,15 @@ public class FeedbackChannelImpl impleme
         long lowest = rangeIterator.next();
         long highest = delta.getHigh();
         if (lowest <= highest) {
-            List<LogEvent> events = m_storeManager.getEvents(storeID, lowest, highestLocal > highest ? highest : highestLocal);
-            Iterator<LogEvent> iter = events.iterator();
+            List<Event> events = m_storeManager.getEvents(storeID, lowest, highestLocal > highest ? highest : highestLocal);
+            Iterator<Event> iter = events.iterator();
             while (iter.hasNext()) {
-                LogEvent current = (LogEvent) iter.next();
+                Event current = (Event) iter.next();
                 while ((current.getID() > lowest) && rangeIterator.hasNext()) {
                     lowest = rangeIterator.next();
                 }
                 if (current.getID() == lowest) {
-                    LogEvent event = new LogEvent(identification, current);
+                    Event event = new Event(identification, current);
                     sendWriter.write(event.toRepresentation());
                     sendWriter.write("\n");
                 }

Modified: ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackStoreManager.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackStoreManager.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackStoreManager.java (original)
+++ ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/FeedbackStoreManager.java Tue Oct  1 12:33:09 2013
@@ -34,7 +34,7 @@ import java.util.TreeSet;
 
 import org.apache.ace.agent.AgentContext;
 import org.apache.ace.agent.LoggingHandler;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Event;
 
 /**
  * This class acts as a factory for retrieving/creating stores and it also is an adapter for the feedbackstore that is
@@ -166,7 +166,7 @@ public class FeedbackStoreManager {
             }
             // log the event
             long nextEventId = (m_highest = getHighestEventID(m_currentStore.getId()) + 1);
-            LogEvent result = new LogEvent(null, m_currentStore.getId(), nextEventId, System.currentTimeMillis(), type, dictionary);
+            Event result = new Event(null, m_currentStore.getId(), nextEventId, System.currentTimeMillis(), type, dictionary);
             m_currentStore.append(result.getID(), result.toRepresentation().getBytes());
         }
         catch (IOException ex) {
@@ -216,9 +216,9 @@ public class FeedbackStoreManager {
      * @param toEventId
      *            the end of the range of events
      */
-    public List<LogEvent> getEvents(long storeID, long fromEventID, long toEventID) throws IOException {
+    public List<Event> getEvents(long storeID, long fromEventID, long toEventID) throws IOException {
         FeedbackStore[] stores = getAllStores(storeID);
-        List<LogEvent> result = new ArrayList<LogEvent>();
+        List<Event> result = new ArrayList<Event>();
         try {
             for (FeedbackStore store : stores) {
                 try {
@@ -229,7 +229,7 @@ public class FeedbackStoreManager {
                     while (store.hasNext()) {
                         long eventID = store.readCurrentID();
                         if ((eventID >= fromEventID) && (eventID <= toEventID)) {
-                            result.add(new LogEvent(new String(store.read())));
+                            result.add(new Event(new String(store.read())));
                         }
                         else {
                             store.skip();

Modified: ace/trunk/org.apache.ace.agent/test/org/apache/ace/agent/impl/FeedbackChannelImplTest.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.agent/test/org/apache/ace/agent/impl/FeedbackChannelImplTest.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.agent/test/org/apache/ace/agent/impl/FeedbackChannelImplTest.java (original)
+++ ace/trunk/org.apache.ace.agent/test/org/apache/ace/agent/impl/FeedbackChannelImplTest.java Tue Oct  1 12:33:09 2013
@@ -40,8 +40,8 @@ import org.apache.ace.agent.DiscoveryHan
 import org.apache.ace.agent.IdentificationHandler;
 import org.apache.ace.agent.testutil.BaseAgentTest;
 import org.apache.ace.agent.testutil.TestWebServer;
-import org.apache.ace.log.LogDescriptor;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Descriptor;
+import org.apache.ace.feedback.Event;
 import org.apache.ace.range.SortedRangeSet;
 import org.testng.annotations.AfterTest;
 import org.testng.annotations.BeforeMethod;
@@ -61,7 +61,7 @@ public class FeedbackChannelImplTest ext
     static class TestSendFeedbackServlet extends HttpServlet {
         private static final long serialVersionUID = 1L;
 
-        List<LogEvent> m_events = new ArrayList<LogEvent>();
+        List<Event> m_events = new ArrayList<Event>();
 
         @SuppressWarnings("deprecation")
         @Override
@@ -70,7 +70,7 @@ public class FeedbackChannelImplTest ext
             BufferedReader reader = new BufferedReader(new InputStreamReader(req.getInputStream()));
             String eventString;
             while ((eventString = reader.readLine()) != null) {
-                LogEvent event = new LogEvent(eventString);
+                Event event = new Event(eventString);
                 m_events.add(event);
             }
             resp.setStatus(200, "voila");
@@ -85,7 +85,7 @@ public class FeedbackChannelImplTest ext
         protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
             String targetID = request.getParameter("tid");
             long logID = Long.parseLong(request.getParameter("logid"));
-            response.getOutputStream().print(new LogDescriptor(targetID, logID, new SortedRangeSet(new long[0])).toRepresentation());
+            response.getOutputStream().print(new Descriptor(targetID, logID, new SortedRangeSet(new long[0])).toRepresentation());
             response.setStatus(200, "voila");
         }
     }

Modified: ace/trunk/org.apache.ace.authentication.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.authentication.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.authentication.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.authentication.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -6,7 +6,6 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.connectionfactory;version=latest,\
 	org.apache.ace.repository.api;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.log.server.store.api;version=latest,\
 	org.apache.ace.client.repository.api;version=latest,\
 	org.apache.ace.repository.impl;version=latest,\
@@ -16,7 +15,9 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.identification.property;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.range.api;version=latest,\
-	org.apache.ace.obr.storage;version=latest
+	org.apache.ace.obr.storage;version=latest,\
+    org.apache.ace.log.api;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -runfw: org.apache.felix.framework;version='[4,5)'
 -runvm: -ea
 -runbundles: osgi.cmpn,\
@@ -49,7 +50,6 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.identification.api;version=latest,\
 	org.apache.ace.identification.property;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.log.listener;version=latest,\
 	org.apache.ace.log.server.store.api;version=latest,\
 	org.apache.ace.log.server.store.file;version=latest,\
@@ -66,7 +66,9 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.repository.servlet;version=latest,\
 	org.apache.ace.resourceprocessor.useradmin;version=latest,\
 	org.apache.ace.scheduler.impl;version=latest,\
-	org.apache.ace.test;version=latest
+	org.apache.ace.test;version=latest,\
+	org.apache.ace.log.api;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 Private-Package: org.apache.ace.it.authentication
 Bundle-Version: 1.0.0
 -runrepos: Local,\

Modified: ace/trunk/org.apache.ace.authentication.itest/src/org/apache/ace/it/authentication/LogAuthenticationTest.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.authentication.itest/src/org/apache/ace/it/authentication/LogAuthenticationTest.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.authentication.itest/src/org/apache/ace/it/authentication/LogAuthenticationTest.java (original)
+++ ace/trunk/org.apache.ace.authentication.itest/src/org/apache/ace/it/authentication/LogAuthenticationTest.java Tue Oct  1 12:33:09 2013
@@ -30,11 +30,11 @@ import java.util.concurrent.TimeUnit;
 import org.apache.ace.client.repository.SessionFactory;
 import org.apache.ace.connectionfactory.ConnectionFactory;
 import org.apache.ace.discovery.property.constants.DiscoveryConstants;
+import org.apache.ace.log.Log;
+import org.apache.ace.feedback.Descriptor;
+import org.apache.ace.feedback.Event;
 import org.apache.ace.http.listener.constants.HttpConstants;
 import org.apache.ace.identification.property.constants.IdentificationConstants;
-import org.apache.ace.log.Log;
-import org.apache.ace.log.LogDescriptor;
-import org.apache.ace.log.LogEvent;
 import org.apache.ace.log.server.store.LogStore;
 import org.apache.ace.repository.Repository;
 import org.apache.ace.repository.impl.constants.RepositoryConstants;
@@ -197,9 +197,9 @@ public class LogAuthenticationTest exten
             String tid2 = "47";
 
             // prepare the store
-            List<LogEvent> events = new ArrayList<LogEvent>();
-            events.add(new LogEvent(tid1, 1, 1, 1, 1, new Properties()));
-            events.add(new LogEvent(tid2, 1, 1, 1, 1, new Properties()));
+            List<Event> events = new ArrayList<Event>();
+            events.add(new Event(tid1, 1, 1, 1, 1, new Properties()));
+            events.add(new Event(tid2, 1, 1, 1, 1, new Properties()));
             m_serverStore.put(events);
 
             List<String> result = getResponse("http://localhost:" + TestConstants.PORT + "/auditlog/query");
@@ -234,14 +234,14 @@ public class LogAuthenticationTest exten
                 m_auditLogSyncTask.run();
 
                 // get and evaluate results (note that there is some concurrency that might interfere with this test)
-                List<LogDescriptor> ranges2 = m_serverStore.getDescriptors();
+                List<Descriptor> ranges2 = m_serverStore.getDescriptors();
                 if (ranges2.isEmpty()) {
                     continue;
                 }
 
-                for (LogDescriptor descriptor : ranges2) {
-                    List<LogEvent> events = m_serverStore.get(descriptor);
-                    for (LogEvent event : events) {
+                for (Descriptor descriptor : ranges2) {
+                    List<Event> events = m_serverStore.get(descriptor);
+                    for (Event event : events) {
                         if (event.getType() == type) {
                             Dictionary properties = event.getProperties();
                             assertEquals("value1", properties.get("one"));

Modified: ace/trunk/org.apache.ace.client.repository.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.client.repository.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -4,7 +4,6 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	osgi.cmpn,\
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.test;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.discovery.api;version=latest,\
 	org.apache.ace.discovery.property;version=latest,\
@@ -19,7 +18,8 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.repository.impl;version=latest,\
 	org.apache.ace.client.repository.api;version=latest,\
 	org.apache.ace.client.repository.helper.bundle;version=latest,\
-	org.apache.ace.log.server.store.api;version=latest
+	org.apache.ace.log.server.store.api;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -runfw: org.apache.felix.framework;version='[4,5)'
 -runvm: -ea
 -runbundles: osgi.cmpn,\
@@ -71,7 +71,8 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.client.repository.impl;version=latest,\
 	org.apache.felix.gogo.command,\
 	org.apache.felix.gogo.runtime,\
-	org.apache.felix.gogo.shell
+	org.apache.felix.gogo.shell,\
+	org.apache.ace.feedback.common;version=latest
 -runproperties: org.apache.felix.eventadmin.Timeout=0
 Private-Package: org.apache.ace.it.repositoryadmin
 Bundle-Version: 1.0.0

Modified: ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/ClientAutomationTest.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/ClientAutomationTest.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/ClientAutomationTest.java (original)
+++ ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/ClientAutomationTest.java Tue Oct  1 12:33:09 2013
@@ -26,8 +26,8 @@ import java.util.concurrent.Callable;
 
 import org.apache.ace.client.repository.RepositoryAdmin;
 import org.apache.ace.client.repository.stateful.StatefulTargetObject;
-import org.apache.ace.log.AuditEvent;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.AuditEvent;
+import org.apache.ace.feedback.Event;
 import org.apache.ace.scheduler.constants.SchedulerConstants;
 import org.osgi.framework.Constants;
 import org.osgi.service.cm.Configuration;
@@ -85,9 +85,9 @@ public class ClientAutomationTest extend
     }
 
     private void doAutoTargetReg() throws Exception {
-        List<LogEvent> events = new ArrayList<LogEvent>();
+        List<Event> events = new ArrayList<Event>();
         Properties props = new Properties();
-        events.add(new LogEvent("anotherTarget", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+        events.add(new Event("anotherTarget", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
         // fill auditlog; no install data
         m_auditLogStore.put(events);
 
@@ -122,7 +122,7 @@ public class ClientAutomationTest extend
 
             // add a target which will not be autoregistered
             events.clear();
-            events.add(new LogEvent("secondTarget", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+            events.add(new Event("secondTarget", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
             m_auditLogStore.put(events);
 
             // do auto target action

Modified: ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/StatefulTargetRepositoryTest.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/StatefulTargetRepositoryTest.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/StatefulTargetRepositoryTest.java (original)
+++ ace/trunk/org.apache.ace.client.repository.itest/src/org/apache/ace/it/repositoryadmin/StatefulTargetRepositoryTest.java Tue Oct  1 12:33:09 2013
@@ -48,8 +48,8 @@ import org.apache.ace.client.repository.
 import org.apache.ace.client.repository.stateful.StatefulTargetObject.ProvisioningState;
 import org.apache.ace.client.repository.stateful.StatefulTargetObject.RegistrationState;
 import org.apache.ace.client.repository.stateful.StatefulTargetObject.StoreState;
-import org.apache.ace.log.AuditEvent;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.AuditEvent;
+import org.apache.ace.feedback.Event;
 import org.osgi.framework.InvalidSyntaxException;
 import org.osgi.service.useradmin.User;
 
@@ -183,18 +183,18 @@ public class StatefulTargetRepositoryTes
         assertTrue("We just preregistered a target, so it should be registered.", sgo1.isRegistered());
 
         // add auditlog data
-        List<LogEvent> events = new ArrayList<LogEvent>();
+        List<Event> events = new ArrayList<Event>();
         Properties props = new Properties();
-        events.add(new LogEvent("myNewTarget3", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+        events.add(new Event("myNewTarget3", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
         // add an (old) set of target properties
         Properties props2 = new Properties();
         props2.put("mykey", "myoldvalue");
         props2.put("myoldkey", "myoldvalue");
-        events.add(new LogEvent("myNewTarget3", 1, 2, 2, AuditEvent.TARGETPROPERTIES_SET, props2));
+        events.add(new Event("myNewTarget3", 1, 2, 2, AuditEvent.TARGETPROPERTIES_SET, props2));
         // add a new set of target properties
         Properties props3 = new Properties();
         props3.put("mykey", "myvalue");
-        events.add(new LogEvent("myNewTarget3", 1, 3, 3, AuditEvent.TARGETPROPERTIES_SET, props3));
+        events.add(new Event("myNewTarget3", 1, 3, 3, AuditEvent.TARGETPROPERTIES_SET, props3));
         m_auditLogStore.put(events);
         m_statefulTargetRepository.refresh();
 
@@ -206,9 +206,9 @@ public class StatefulTargetRepositoryTes
         assertTrue("Adding auditlog data for a target does not influence its isRegistered().", sgo1.isRegistered());
 
         // add auditlog data for other target
-        events = new ArrayList<LogEvent>();
+        events = new ArrayList<Event>();
         props = new Properties();
-        events.add(new LogEvent("myNewTarget4", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+        events.add(new Event("myNewTarget4", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
         m_auditLogStore.put(events);
         runAndWaitForEvent(new Callable<Object>() {
             public Object call() throws Exception {
@@ -336,9 +336,9 @@ public class StatefulTargetRepositoryTes
         assertTrue("We just preregistered a gateway, so it should be registered.", sgo1.isRegistered());
 
         // add auditlog data
-        List<LogEvent> events = new ArrayList<LogEvent>();
+        List<Event> events = new ArrayList<Event>();
         Properties props = new Properties();
-        events.add(new LogEvent("myNewGatewayA", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+        events.add(new Event("myNewGatewayA", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
         m_auditLogStore.put(events);
         m_statefulTargetRepository.refresh();
 
@@ -351,9 +351,9 @@ public class StatefulTargetRepositoryTes
             assertTrue("We should be able to get sgo1's gatewayObject.", false);
         }
         // add auditlog data for other gateway
-        events = new ArrayList<LogEvent>();
+        events = new ArrayList<Event>();
         props = new Properties();
-        events.add(new LogEvent("myNewGatewayB", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+        events.add(new Event("myNewGatewayB", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
         m_auditLogStore.put(events);
         runAndWaitForEvent(new Callable<Object>() {
             public Object call() throws Exception {
@@ -449,10 +449,10 @@ public class StatefulTargetRepositoryTes
 
         final String targetId = String.format("target-%s", Long.toHexString(System.nanoTime()));
 
-        List<LogEvent> events = new ArrayList<LogEvent>();
+        List<Event> events = new ArrayList<Event>();
         Properties props = new Properties();
 
-        events.add(new LogEvent(targetId, 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+        events.add(new Event(targetId, 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
         // fill auditlog; no install data
         m_auditLogStore.put(events);
 
@@ -469,11 +469,11 @@ public class StatefulTargetRepositoryTes
         assertEquals("We expect our object's provisioning state to be Idle;", ProvisioningState.Idle, sgo.getProvisioningState());
 
         // fill auditlog with complete-data
-        events = new ArrayList<LogEvent>();
+        events = new ArrayList<Event>();
         props = new Properties();
         props.put(AuditEvent.KEY_NAME, "mypackage");
         props.put(AuditEvent.KEY_VERSION, "123");
-        events.add(new LogEvent(targetId, 1, 2, 2, AuditEvent.DEPLOYMENTCONTROL_INSTALL, props));
+        events.add(new Event(targetId, 1, 2, 2, AuditEvent.DEPLOYMENTCONTROL_INSTALL, props));
 
         m_auditLogStore.put(events);
 
@@ -488,12 +488,12 @@ public class StatefulTargetRepositoryTes
         assertEquals("We expect our object's provisioning state to be InProgress;", ProvisioningState.InProgress, sgo.getProvisioningState());
 
         // fill auditlog with install data
-        events = new ArrayList<LogEvent>();
+        events = new ArrayList<Event>();
         props = new Properties();
         props.put(AuditEvent.KEY_NAME, "mypackage");
         props.put(AuditEvent.KEY_VERSION, "123");
         props.put(AuditEvent.KEY_SUCCESS, "false");
-        events.add(new LogEvent(targetId, 1, 3, 3, AuditEvent.DEPLOYMENTADMIN_COMPLETE, props));
+        events.add(new Event(targetId, 1, 3, 3, AuditEvent.DEPLOYMENTADMIN_COMPLETE, props));
 
         m_auditLogStore.put(events);
 
@@ -513,11 +513,11 @@ public class StatefulTargetRepositoryTes
         assertEquals("We expect our object's provisioning state to be Idle;", ProvisioningState.Idle, sgo.getProvisioningState());
 
         // add another install event.
-        events = new ArrayList<LogEvent>();
+        events = new ArrayList<Event>();
         props = new Properties();
         props.put(AuditEvent.KEY_NAME, "mypackage");
         props.put(AuditEvent.KEY_VERSION, "124");
-        events.add(new LogEvent(targetId, 1, 4, 4, AuditEvent.DEPLOYMENTCONTROL_INSTALL, props));
+        events.add(new Event(targetId, 1, 4, 4, AuditEvent.DEPLOYMENTCONTROL_INSTALL, props));
 
         m_auditLogStore.put(events);
 
@@ -532,12 +532,12 @@ public class StatefulTargetRepositoryTes
         assertEquals("We expect our object's provisioning state to be InProgress;", ProvisioningState.InProgress, sgo.getProvisioningState());
 
         // fill auditlog with install data
-        events = new ArrayList<LogEvent>();
+        events = new ArrayList<Event>();
         props = new Properties();
         props.put(AuditEvent.KEY_NAME, "mypackage");
         props.put(AuditEvent.KEY_VERSION, "124");
         props.put(AuditEvent.KEY_SUCCESS, "true");
-        events.add(new LogEvent(targetId, 1, 5, 5, AuditEvent.DEPLOYMENTADMIN_COMPLETE, props));
+        events.add(new Event(targetId, 1, 5, 5, AuditEvent.DEPLOYMENTADMIN_COMPLETE, props));
 
         m_auditLogStore.put(events);
 
@@ -629,11 +629,11 @@ public class StatefulTargetRepositoryTes
 
         final String targetID = ":)";
 
-        List<LogEvent> events = new ArrayList<LogEvent>();
+        List<Event> events = new ArrayList<Event>();
         Properties props = new Properties();
 
         // add a target with a weird name.
-        events.add(new LogEvent(targetID, 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
+        events.add(new Event(targetID, 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
         // fill auditlog; no install data
         m_auditLogStore.put(events);
 

Modified: ace/trunk/org.apache.ace.client.repository/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.client.repository/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -1,5 +1,4 @@
--buildpath: \
-	osgi.core,\
+-buildpath: osgi.core,\
 	osgi.cmpn,\
 	org.mockito.mockito-all,\
 	xpp3;version=1.1.4,\
@@ -9,12 +8,12 @@
 	commons-collections;version=3.2.1,\
 	org.apache.felix.dependencymanager,\
 	org.apache.felix.gogo.runtime,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.connectionfactory;version=latest,\
 	org.apache.ace.deployment.provider.api;version=latest,\
 	org.apache.ace.repository.api;version=latest,\
 	org.apache.ace.range.api;version=latest,\
 	org.apache.ace.test;version=latest,\
 	org.apache.ace.repository.ext;version=latest,\
-	org.apache.ace.log.server.store.api;version=latest
+	org.apache.ace.log.server.store.api;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -sub: *.bnd

Modified: ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/StatefulTargetObject.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/StatefulTargetObject.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/StatefulTargetObject.java (original)
+++ ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/StatefulTargetObject.java Tue Oct  1 12:33:09 2013
@@ -26,7 +26,7 @@ import org.apache.ace.client.repository.
 import org.apache.ace.client.repository.object.TargetObject;
 import org.apache.ace.client.repository.object.Distribution2TargetAssociation;
 import org.apache.ace.client.repository.object.DistributionObject;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Event;
 
 /**
  * Represents the information that a <code>TargetObject</code>
@@ -91,7 +91,7 @@ public interface StatefulTargetObject ex
      * Gets the list of AuditLog Events for this target. If no auditlog events
      * can be found, and empty list will be returned. The events are ordered ascending by timestamp.
      */
-    public List<LogEvent> getAuditEvents();
+    public List<Event> getAuditEvents();
 
     /**
      * Registers this target, which for now only exists in the AuditLog, into the

Modified: ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/LogEventComparator.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/LogEventComparator.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/LogEventComparator.java (original)
+++ ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/LogEventComparator.java Tue Oct  1 12:33:09 2013
@@ -20,15 +20,15 @@ package org.apache.ace.client.repository
 
 import java.util.Comparator;
 
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Event;
 
-public final class LogEventComparator implements Comparator<LogEvent> {
-	public int compare(LogEvent left, LogEvent right) {
-        if (left.getLogID() == right.getLogID()) {
+public final class LogEventComparator implements Comparator<Event> {
+	public int compare(Event left, Event right) {
+        if (left.getStoreID() == right.getStoreID()) {
             return sgn(left.getTime() - right.getTime());
         }
         else {
-            return sgn(left.getLogID() - right.getLogID());
+            return sgn(left.getStoreID() - right.getStoreID());
         }
     }
 

Modified: ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetObjectImpl.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetObjectImpl.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetObjectImpl.java (original)
+++ ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetObjectImpl.java Tue Oct  1 12:33:09 2013
@@ -39,9 +39,9 @@ import org.apache.ace.client.repository.
 import org.apache.ace.client.repository.object.DistributionObject;
 import org.apache.ace.client.repository.object.TargetObject;
 import org.apache.ace.client.repository.stateful.StatefulTargetObject;
-import org.apache.ace.log.AuditEvent;
-import org.apache.ace.log.LogDescriptor;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.AuditEvent;
+import org.apache.ace.feedback.Descriptor;
+import org.apache.ace.feedback.Event;
 
 /**
  * A <code>StatefulTargetObjectImpl</code> uses the interface of a <code>StatefulTargetObject</code>,
@@ -53,7 +53,7 @@ public class StatefulTargetObjectImpl im
     private final StatefulTargetRepositoryImpl m_repository;
     private final Object m_lock = new Object();
     private TargetObject m_targetObject;
-    private List<LogDescriptor> m_processedAuditEvents = new ArrayList<LogDescriptor>();
+    private List<Descriptor> m_processedAuditEvents = new ArrayList<Descriptor>();
     private Dictionary m_processedTargetProperties;
     private Map<String, String> m_attributes = new HashMap<String, String>();
     /** This boolean is used to suppress STATUS_CHANGED events during the creation of the object. */
@@ -88,7 +88,7 @@ public class StatefulTargetObjectImpl im
         }
     }
 
-    public List<LogEvent> getAuditEvents() {
+    public List<Event> getAuditEvents() {
         return m_repository.getAuditEvents(getID());
     }
 
@@ -315,14 +315,14 @@ public class StatefulTargetObjectImpl im
                 return;
             }
             m_determiningProvisioningState = true;
-            List<LogDescriptor> allDescriptors = m_repository.getAllDescriptors(getID());
-            List<LogDescriptor> newDescriptors = m_repository.diffLogDescriptorLists(allDescriptors, m_processedAuditEvents);
+            List<Descriptor> allDescriptors = m_repository.getAllDescriptors(getID());
+            List<Descriptor> newDescriptors = m_repository.diffLogDescriptorLists(allDescriptors, m_processedAuditEvents);
 
-            List<LogEvent> newEvents = m_repository.getAuditEvents(newDescriptors);
+            List<Event> newEvents = m_repository.getAuditEvents(newDescriptors);
             boolean foundDeploymentEvent = false;
             boolean foundPropertiesEvent = false;
             for (int position = newEvents.size() - 1; position >= 0; position--) {
-                LogEvent event = newEvents.get(position);
+                Event event = newEvents.get(position);
                 
                 if (!foundDeploymentEvent) {
                     // TODO we need to check here if the deployment package is actually the right one
@@ -409,10 +409,10 @@ public class StatefulTargetObjectImpl im
         }
     }
     
-    private void sendNewAuditlog(List<LogDescriptor> events) {
+    private void sendNewAuditlog(List<Descriptor> events) {
         // Check whether there are actually events in the list.
         boolean containsData = false;
-        for (LogDescriptor l : events) {
+        for (Descriptor l : events) {
             containsData |= (l.getRangeSet().getHigh() != 0);
         }
 

Modified: ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetRepositoryImpl.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetRepositoryImpl.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetRepositoryImpl.java (original)
+++ ace/trunk/org.apache.ace.client.repository/src/org/apache/ace/client/repository/stateful/impl/StatefulTargetRepositoryImpl.java Tue Oct  1 12:33:09 2013
@@ -50,14 +50,13 @@ import org.apache.ace.client.repository.
 import org.apache.ace.client.repository.stateful.StatefulTargetObject;
 import org.apache.ace.client.repository.stateful.StatefulTargetObject.ApprovalState;
 import org.apache.ace.client.repository.stateful.StatefulTargetRepository;
-import org.apache.ace.log.LogDescriptor;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Descriptor;
+import org.apache.ace.feedback.Event;
 import org.apache.ace.log.server.store.LogStore;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Filter;
 import org.osgi.framework.InvalidSyntaxException;
 import org.osgi.framework.Version;
-import org.osgi.service.event.Event;
 import org.osgi.service.event.EventAdmin;
 import org.osgi.service.event.EventHandler;
 import org.osgi.service.log.LogService;
@@ -240,7 +239,7 @@ public class StatefulTargetRepositoryImp
         return false;
     }
 
-    private Comparator<LogEvent> m_auditEventComparator = new LogEventComparator();
+    private Comparator<Event> m_auditEventComparator = new LogEventComparator();
 
     /**
      * Gets all auditlog events which are related to a given target ID.
@@ -249,7 +248,7 @@ public class StatefulTargetRepositoryImp
      * @return a list of <code>AuditEvent</code>s related to this target ID,
      *         ordered in the order they happened. If no events can be found, and empty list will be returned.
      */
-    List<LogEvent> getAuditEvents(String targetID) {
+    List<Event> getAuditEvents(String targetID) {
         return getAuditEvents(getAllDescriptors(targetID));
     }
 
@@ -259,10 +258,10 @@ public class StatefulTargetRepositoryImp
      * @param targetID The target ID
      * @return A list of LogDescriptors, in no particular order.
      */
-    List<LogDescriptor> getAllDescriptors(String targetID) {
-        List<LogDescriptor> result = new ArrayList<LogDescriptor>();
+    List<Descriptor> getAllDescriptors(String targetID) {
+        List<Descriptor> result = new ArrayList<Descriptor>();
         try {
-            List<LogDescriptor> descriptors = m_auditLogStore.getDescriptors(targetID);
+            List<Descriptor> descriptors = m_auditLogStore.getDescriptors(targetID);
             if (descriptors != null) {
                 result = descriptors;
             }
@@ -284,10 +283,10 @@ public class StatefulTargetRepositoryImp
      * @return All AuditLog events that are in the audit store, but are not identified
      *         by <code>oldDescriptors</code>, ordered by 'happened-before'.
      */
-    List<LogEvent> getAuditEvents(List<LogDescriptor> events) {
+    List<Event> getAuditEvents(List<Descriptor> events) {
         // Get all events from the audit log store, if possible.
-        List<LogEvent> result = new ArrayList<LogEvent>();
-        for (LogDescriptor l : events) {
+        List<Event> result = new ArrayList<Event>();
+        for (Descriptor l : events) {
             try {
                 result.addAll(m_auditLogStore.get(l));
             }
@@ -301,15 +300,15 @@ public class StatefulTargetRepositoryImp
         return result;
     }
 
-    List<LogDescriptor> diffLogDescriptorLists(List<LogDescriptor> all, List<LogDescriptor> seen) {
-        List<LogDescriptor> descriptors = new ArrayList<LogDescriptor>();
+    List<Descriptor> diffLogDescriptorLists(List<Descriptor> all, List<Descriptor> seen) {
+        List<Descriptor> descriptors = new ArrayList<Descriptor>();
 
         // Find out what events should be returned
-        for (LogDescriptor s : all) {
-            LogDescriptor diffs = s;
-            for (LogDescriptor d : seen) {
-                if ((s.getLogID() == d.getLogID()) && (s.getTargetID().equals(d.getTargetID()))) {
-                    diffs = new LogDescriptor(s.getTargetID(), s.getLogID(), d.getRangeSet().diffDest(s.getRangeSet()));
+        for (Descriptor s : all) {
+            Descriptor diffs = s;
+            for (Descriptor d : seen) {
+                if ((s.getStoreID() == d.getStoreID()) && (s.getTargetID().equals(d.getTargetID()))) {
+                    diffs = new Descriptor(s.getTargetID(), s.getStoreID(), d.getRangeSet().diffDest(s.getRangeSet()));
                 }
             }
             descriptors.add(diffs);
@@ -352,7 +351,7 @@ public class StatefulTargetRepositoryImp
     void notifyChanged(StatefulTargetObject stoi, String topic, Properties additionalProperties) {
         additionalProperties.put(RepositoryObject.EVENT_ENTITY, stoi);
         additionalProperties.put(SessionFactory.SERVICE_SID, m_sessionID);
-        m_eventAdmin.postEvent(new Event(topic, (Dictionary) additionalProperties));
+        m_eventAdmin.postEvent(new org.osgi.service.event.Event(topic, (Dictionary) additionalProperties));
     }
 
     /**
@@ -424,7 +423,7 @@ public class StatefulTargetRepositoryImp
      */
     private List<StatefulTargetObjectImpl> parseAuditLog() {
         List<StatefulTargetObjectImpl> result = new ArrayList<StatefulTargetObjectImpl>();
-        List<LogDescriptor> descriptors = null;
+        List<Descriptor> descriptors = null;
         try {
             descriptors = m_auditLogStore.getDescriptors();
         }
@@ -437,7 +436,7 @@ public class StatefulTargetRepositoryImp
         }
 
         Set<String> targetIDs = new HashSet<String>();
-        for (LogDescriptor l : descriptors) {
+        for (Descriptor l : descriptors) {
             targetIDs.add(l.getTargetID());
         }
 
@@ -709,7 +708,7 @@ public class StatefulTargetRepositoryImp
         }
     }
 
-    public void handleEvent(Event event) {
+    public void handleEvent(org.osgi.service.event.Event event) {
         String topic = event.getTopic();
         if (RepositoryAdmin.PRIVATE_TOPIC_HOLDUNTILREFRESH.equals(topic)) {
             m_holdEvents = true;

Modified: ace/trunk/org.apache.ace.client.repository/test/org/apache/ace/client/repository/impl/ACE308Test.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.repository/test/org/apache/ace/client/repository/impl/ACE308Test.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.repository/test/org/apache/ace/client/repository/impl/ACE308Test.java (original)
+++ ace/trunk/org.apache.ace.client.repository/test/org/apache/ace/client/repository/impl/ACE308Test.java Tue Oct  1 12:33:09 2013
@@ -19,7 +19,7 @@
 package org.apache.ace.client.repository.impl;
 
 import org.apache.ace.client.repository.stateful.impl.LogEventComparator;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Event;
 import org.apache.ace.test.utils.TestUtils;
 import org.testng.Assert;
 import org.testng.annotations.Test;
@@ -34,8 +34,8 @@ public class ACE308Test {
     @Test( groups = { TestUtils.UNIT } )
     public void testLogEvents() {
     	LogEventComparator c = new LogEventComparator();
-    	LogEvent left = new LogEvent("t", 1, 1, -1000000000000000000L, 0, null);
-    	LogEvent right = new LogEvent("t", 1, 1, 1, 0, null);
+    	Event left = new Event("t", 1, 1, -1000000000000000000L, 0, null);
+    	Event right = new Event("t", 1, 1, 1, 0, null);
     	Assert.assertTrue((left.getTime() - right.getTime()) < 0L);
     	Assert.assertTrue(c.compare(left, right) < 0L);
     }

Modified: ace/trunk/org.apache.ace.client.rest.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.rest.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.rest.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.client.rest.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -1,6 +1,5 @@
 Test-Cases: ${classes;CONCRETE;EXTENDS;org.apache.ace.it.IntegrationTestBase}
--buildpath: \
-	osgi.core,\
+-buildpath: osgi.core,\
 	osgi.cmpn,\
 	junit.osgi,\
 	biz.aQute.bnd,\
@@ -10,7 +9,6 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	gson,\
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.test;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.discovery.api;version=latest,\
 	org.apache.ace.discovery.property;version=latest,\
@@ -26,7 +24,8 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.client.repository.api;version=latest,\
 	org.apache.ace.client.repository.helper.base;version=latest,\
 	org.apache.ace.client.repository.helper.bundle;version=latest,\
-	org.apache.ace.client.repository.helper.configuration;version=latest
+	org.apache.ace.client.repository.helper.configuration;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -runfw: org.apache.felix.framework;version='[4,5)'
 -runvm: -ea
 -runbundles: osgi.cmpn,\
@@ -78,7 +77,8 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.client.repository.helper.configuration;version=latest,\
 	org.apache.ace.client.repository.impl;version=latest,\
 	org.apache.ace.deployment.provider.repositorybased;version=latest,\
-	org.apache.ace.client.rest;version=latest
+	org.apache.ace.client.rest;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -runproperties: org.apache.felix.log.storeDebug=true,\
 	org.apache.felix.eventadmin.Timeout=0,\
 	org.apache.felix.log.maxSize=1000

Modified: ace/trunk/org.apache.ace.client.rest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.rest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.rest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.client.rest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -1,7 +1,6 @@
 -buildpath: osgi.core,\
 	osgi.cmpn,\
 	org.apache.felix.dependencymanager,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.connectionfactory;version=latest,\
 	org.apache.ace.authentication.api;version=latest,\
 	org.apache.ace.client.repository.api;version=latest,\
@@ -13,7 +12,8 @@
 	org.mockito.mockito-all,\
 	org.apache.felix.gogo.command,\
 	org.apache.felix.gogo.shell,\
-	org.apache.felix.gogo.runtime
+	org.apache.felix.gogo.runtime,\
+	org.apache.ace.feedback.common;version=latest
 Private-Package: org.apache.ace.client.rest,\
 	com.google.gson,\
 	com.google.gson.annotations,\

Modified: ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/LogEventSerializer.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/LogEventSerializer.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/LogEventSerializer.java (original)
+++ ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/LogEventSerializer.java Tue Oct  1 12:33:09 2013
@@ -25,20 +25,20 @@ import java.util.Date;
 import java.util.Dictionary;
 import java.util.Enumeration;
 
-import org.apache.ace.log.AuditEvent;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.AuditEvent;
+import org.apache.ace.feedback.Event;
 
 import com.google.gson.JsonElement;
 import com.google.gson.JsonObject;
 import com.google.gson.JsonSerializationContext;
 import com.google.gson.JsonSerializer;
 
-public class LogEventSerializer implements JsonSerializer<LogEvent> {
+public class LogEventSerializer implements JsonSerializer<Event> {
 
-	public JsonElement serialize(LogEvent e, Type typeOfSrc, JsonSerializationContext context) {
+	public JsonElement serialize(Event e, Type typeOfSrc, JsonSerializationContext context) {
         DateFormat format = SimpleDateFormat.getDateTimeInstance();
         JsonObject event = new JsonObject();
-        event.addProperty("logId", e.getLogID());
+        event.addProperty("logId", e.getStoreID());
         event.addProperty("id", e.getID());
         event.addProperty("time", format.format(new Date(e.getTime())));
         event.addProperty("type", toAuditEventType(e.getType()));

Modified: ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/RESTClientServlet.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/RESTClientServlet.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/RESTClientServlet.java (original)
+++ ace/trunk/org.apache.ace.client.rest/src/org/apache/ace/client/rest/RESTClientServlet.java Tue Oct  1 12:33:09 2013
@@ -46,7 +46,7 @@ import org.apache.ace.client.repository.
 import org.apache.ace.client.repository.repository.TargetRepository;
 import org.apache.ace.client.repository.stateful.StatefulTargetObject;
 import org.apache.ace.client.repository.stateful.StatefulTargetRepository;
-import org.apache.ace.log.LogEvent;
+import org.apache.ace.feedback.Event;
 import org.apache.felix.dm.Component;
 import org.apache.felix.dm.DependencyManager;
 import org.osgi.service.cm.ConfigurationException;
@@ -122,7 +122,7 @@ public class RESTClientServlet extends H
     public RESTClientServlet() {
         m_gson = (new GsonBuilder())
             .registerTypeHierarchyAdapter(RepositoryObject.class, new RepositoryObjectSerializer())
-            .registerTypeHierarchyAdapter(LogEvent.class, new LogEventSerializer())
+            .registerTypeHierarchyAdapter(Event.class, new LogEventSerializer())
             .create();
         
         m_workspaces = new HashMap<String, Workspace>();
@@ -566,7 +566,7 @@ public class RESTClientServlet extends H
         }
         else if (Workspace.TARGET.equals(entityType) && ACTION_AUDITEVENTS.equals(action)) {
             StatefulTargetObject target = (StatefulTargetObject) repositoryObject;
-            List<LogEvent> events = target.getAuditEvents();
+            List<Event> events = target.getAuditEvents();
 
             String startValue = req.getParameter("start");
             String maxValue = req.getParameter("max");
@@ -581,7 +581,7 @@ public class RESTClientServlet extends H
 
             int end = Math.min(events.size(), start + max);
 
-            List<LogEvent> selection = events.subList(start, end);
+            List<Event> selection = events.subList(start, end);
             resp.getWriter().println(m_gson.toJson(selection));
         }
         else {

Modified: ace/trunk/org.apache.ace.configurator.useradmin.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.configurator.useradmin.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.configurator.useradmin.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.configurator.useradmin.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -4,7 +4,6 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	osgi.cmpn,\
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.test;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.discovery.api;version=latest,\
 	org.apache.ace.discovery.property;version=latest,\
@@ -13,11 +12,11 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.log.server.store.api;version=latest,\
 	org.apache.ace.range.api;version=latest,\
 	org.apache.ace.repository.api;version=latest,\
-	org.apache.ace.repository.impl;version=latest
+	org.apache.ace.repository.impl;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -runfw: org.apache.felix.framework;version='[4,5)'
 -runvm: -ea
--runbundles: \
-	org.apache.felix.dependencymanager,\
+-runbundles: org.apache.felix.dependencymanager,\
 	org.apache.felix.configadmin,\
 	org.apache.felix.http.jetty,\
 	org.apache.felix.prefs,\
@@ -25,7 +24,7 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.felix.useradmin,\
 	org.apache.felix.useradmin.filestore,\
 	org.apache.felix.log,\
-    org.apache.ace.test;version=latest,\
+	org.apache.ace.test;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.deployment.provider.api;version=latest,\
 	org.apache.ace.authentication.api;version=latest,\
@@ -36,7 +35,8 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.scheduler.impl;version=latest,\
 	org.apache.ace.repository.impl;version=latest,\
 	org.apache.ace.repository.servlet;version=latest,\
-	org.apache.ace.configurator.useradmin.task;version=latest
+	org.apache.ace.configurator.useradmin.task;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 Private-Package: org.apache.ace.it.useradminconfigurator
 Bundle-Version: 1.0.0
 Bundle-Name: Apache ACE Configurator Useradmintask itest

Modified: ace/trunk/org.apache.ace.deployment.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.deployment.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.deployment.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.deployment.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -5,7 +5,6 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	javax.servlet,\
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.test;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.discovery.api;version=latest,\
 	org.apache.ace.discovery.property;version=latest,\
@@ -16,11 +15,11 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.deployment.servlet;version=latest,\
 	org.apache.ace.deployment.provider.api;version=latest,\
 	org.apache.ace.deployment.provider.filebased;version=latest,\
-	org.apache.ace.deployment.util.test;version=latest
+	org.apache.ace.deployment.util.test;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -runfw: org.apache.felix.framework;version='[4,5)'
 -runvm: -ea
--runbundles: \
-	osgi.cmpn,\
+-runbundles: osgi.cmpn,\
 	org.apache.felix.dependencymanager,\
 	org.apache.felix.configadmin,\
 	org.apache.felix.eventadmin,\
@@ -48,7 +47,9 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.deployment.task.base;version=latest,\
 	org.apache.ace.deployment.streamgenerator;version=latest,\
 	org.apache.ace.deployment.provider.base;version=latest,\
-	org.apache.ace.test;version=latest
+	org.apache.ace.test;version=latest,\
+	org.apache.ace.feedback.common;version=latest,\
+	org.apache.ace.range.api;version=latest
 Private-Package: org.apache.ace.it.deployment, org.apache.ace.deployment.util.test
 Bundle-Version: 1.0.0
 Bundle-Name: Apache ACE Deployment itest

Added: ace/trunk/org.apache.ace.feedback.common/.classpath
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/.classpath?rev=1528066&view=auto
==============================================================================
--- ace/trunk/org.apache.ace.feedback.common/.classpath (added)
+++ ace/trunk/org.apache.ace.feedback.common/.classpath Tue Oct  1 12:33:09 2013
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" output="bin" path="src"/>
+	<classpathentry kind="src" output="bin_test" path="test"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>

Added: ace/trunk/org.apache.ace.feedback.common/.project
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/.project?rev=1528066&view=auto
==============================================================================
--- ace/trunk/org.apache.ace.feedback.common/.project (added)
+++ ace/trunk/org.apache.ace.feedback.common/.project Tue Oct  1 12:33:09 2013
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.apache.ace.feedback.common</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>bndtools.core.bndbuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>bndtools.core.bndnature</nature>
+	</natures>
+</projectDescription>

Added: ace/trunk/org.apache.ace.feedback.common/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/bnd.bnd?rev=1528066&view=auto
==============================================================================
--- ace/trunk/org.apache.ace.feedback.common/bnd.bnd (added)
+++ ace/trunk/org.apache.ace.feedback.common/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -0,0 +1,7 @@
+Private-Package: org.apache.ace.feedback.util
+Export-Package: org.apache.ace.feedback
+
+Bundle-Version: 1.0.0
+Bundle-Name: Apache ACE Feedback API
+Bundle-Description: Provides the Apache ACE Feedback API packages
+-buildpath: org.apache.ace.range.api;version=latest
\ No newline at end of file

Added: ace/trunk/org.apache.ace.feedback.common/build.xml
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/build.xml?rev=1528066&view=auto
==============================================================================
--- ace/trunk/org.apache.ace.feedback.common/build.xml (added)
+++ ace/trunk/org.apache.ace.feedback.common/build.xml Tue Oct  1 12:33:09 2013
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="project" default="build">
+
+	<!-- -->
+
+	<import file="../cnf/build.xml" />
+</project>

Copied: ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/AuditEvent.java (from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/AuditEvent.java)
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/AuditEvent.java?p2=ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/AuditEvent.java&p1=ace/trunk/org.apache.ace.log/src/org/apache/ace/log/AuditEvent.java&r1=1527533&r2=1528066&rev=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.log/src/org/apache/ace/log/AuditEvent.java (original)
+++ ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/AuditEvent.java Tue Oct  1 12:33:09 2013
@@ -16,11 +16,13 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ace.log;
+package org.apache.ace.feedback;
 
 /**
- * Audit log event. These events are recorded in the audit log, which keeps track of
- * all life cycle events that occur on a target.
+ * Auditlog event. This interface defines a set of constants to define the eventtypes used for the auditlog.
+ * These auditlog constants identify the actions on the target that the server needs to process and validate deployment. 
+ * 
+ * These feedback events are recorded in the auditlog feedbackchannel.
  */
 public interface AuditEvent
 {

Copied: ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Descriptor.java (from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogDescriptor.java)
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Descriptor.java?p2=ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Descriptor.java&p1=ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogDescriptor.java&r1=1527533&r2=1528066&rev=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogDescriptor.java (original)
+++ ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Descriptor.java Tue Oct  1 12:33:09 2013
@@ -16,54 +16,54 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ace.log;
+package org.apache.ace.feedback;
 
 import java.util.NoSuchElementException;
 import java.util.StringTokenizer;
 
 import org.apache.ace.range.SortedRangeSet;
-import org.apache.ace.log.util.Codec;
+import org.apache.ace.feedback.util.Codec;
 
 /**
- * Instances of this class represent a range of log events. Such a range is defined by:
+ * Instances of this class represent a range of events. Such a range is defined by:
  * <ul>
  * <li>A unique target ID</li>
- * <li>A log ID unique for this target</li>
+ * <li>A storeID unique for this target</li>
  * <li>A set of event IDs</li>
  * </ul>
  */
-public class LogDescriptor {
+public class Descriptor {
     private final SortedRangeSet m_rangeSet;
-    private final long m_logID;
+    private final long m_storeID;
     private final String m_targetID;
 
     /**
-     * Create a log event range.
+     * Create an event range.
      *
      * @param targetID The unique target ID
-     * @param logID The unique log ID for this target
+     * @param storeID The unique ID for this target
      * @param rangeSet The set of event IDs
      */
-    public LogDescriptor(String targetID, long logID, SortedRangeSet rangeSet) {
+    public Descriptor(String targetID, long storeID, SortedRangeSet rangeSet) {
         m_targetID = targetID;
-        m_logID = logID;
+        m_storeID = storeID;
         m_rangeSet = rangeSet;
     }
 
     /**
-     * Create a log event range from a string representation. String representations
-     * should be formatted as "targetID,logID,eventIDs" where each substring is formatted
+     * Create a event range from a string representation. String representations
+     * should be formatted as "targetID,storeID,eventIDs" where each substring is formatted
      * using <code>Codec.encode(string)</code> method.
      *
      * Throws an <code>IllegalArgumentException</code> when the string representation is not correctly formatted.
      *
-     * @param representation String representation of the log event range
+     * @param representation String representation of the event range
      */
-    public LogDescriptor(String representation) {
+    public Descriptor(String representation) {
         try {
             StringTokenizer st = new StringTokenizer(representation, ",");
             m_targetID = Codec.decode(st.nextToken());
-            m_logID = Long.parseLong(st.nextToken());
+            m_storeID = Long.parseLong(st.nextToken());
             String rangeSet = "";
             if (st.hasMoreTokens()) {
                 rangeSet = st.nextToken();
@@ -85,16 +85,16 @@ public class LogDescriptor {
     }
 
     /**
-     * Get the unique log identifier for this target.
+     * Get the unique storeID identifier for this target.
      *
-     * @return Unique log identifier for this target.
+     * @return Unique storeID identifier for this target.
      */
-    public long getLogID() {
-        return m_logID;
+    public long getStoreID() {
+        return m_storeID;
     }
 
     /**
-     * Get the range set of the log event range.
+     * Get the range set of the event range.
      *
      * @return The range set
      */
@@ -103,16 +103,16 @@ public class LogDescriptor {
     }
 
     /**
-     * Get a string representation of the log event range. String representations
-     * generated by this method can be used to construct new <code>LogDescriptor</code> instances.
+     * Get a string representation of the event range. String representations
+     * generated by this method can be used to construct new <code>Descriptor</code> instances.
      *
-     * @return A string representation of the log event range
+     * @return A string representation of the event range
      */
     public String toRepresentation() {
         StringBuffer result = new StringBuffer();
         result.append(Codec.encode(m_targetID));
         result.append(',');
-        result.append(m_logID);
+        result.append(m_storeID);
         result.append(',');
         result.append(Codec.encode(m_rangeSet.toRepresentation()));
         return result.toString();

Copied: ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Event.java (from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogEvent.java)
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Event.java?p2=ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Event.java&p1=ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogEvent.java&r1=1527533&r2=1528066&rev=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.log/src/org/apache/ace/log/LogEvent.java (original)
+++ ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/Event.java Tue Oct  1 12:33:09 2013
@@ -16,43 +16,44 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ace.log;
+package org.apache.ace.feedback;
 
 import java.util.Dictionary;
 import java.util.Enumeration;
 import java.util.Properties;
 import java.util.StringTokenizer;
-import org.apache.ace.log.util.Codec;
+
+import org.apache.ace.feedback.util.Codec;
 
 /**
- * Log event from a specific target and log.
+ * Event from specific target (in a specific store).
  */
-public class LogEvent implements Comparable {
+public class Event implements Comparable {
     private final String m_targetID;
-    private final long m_logID;
+    private final long m_storeID;
     private final long m_id;
     private final long m_time;
     private final int m_type;
     private final Dictionary m_properties;
 
-    public LogEvent(String targetID, long logID, long id, long time, int type, Dictionary properties) {
+    public Event(String targetID, long storeID, long id, long time, int type, Dictionary properties) {
         m_targetID = targetID;
-        m_logID = logID;
+        m_storeID = storeID;
         m_id = id;
         m_time = time;
         m_type = type;
         m_properties = properties;
     }
 
-    public LogEvent(String targetID, LogEvent source) {
-        this(targetID, source.getLogID(), source.getID(), source.getTime(), source.getType(), source.getProperties());
+    public Event(String targetID, Event source) {
+        this(targetID, source.getStoreID(), source.getID(), source.getTime(), source.getType(), source.getProperties());
     }
 
-    public LogEvent(String representation) {
+    public Event(String representation) {
         try {
             StringTokenizer st = new StringTokenizer(representation, ",");
             m_targetID = Codec.decode(st.nextToken());
-            m_logID = Long.parseLong(st.nextToken());
+            m_storeID = Long.parseLong(st.nextToken());
             m_id = Long.parseLong(st.nextToken());
             m_time = Long.parseLong(st.nextToken());
             m_type = Integer.parseInt(st.nextToken());
@@ -63,7 +64,7 @@ public class LogEvent implements Compara
         }
         catch (Exception e) {
             throw new IllegalArgumentException(
-                "Could not create log event from: " + representation, e);
+                "Could not create event from: " + representation, e);
         }
     }
 
@@ -71,7 +72,7 @@ public class LogEvent implements Compara
         StringBuffer result = new StringBuffer();
         result.append(Codec.encode(m_targetID));
         result.append(',');
-        result.append(m_logID);
+        result.append(m_storeID);
         result.append(',');
         result.append(m_id);
         result.append(',');
@@ -97,10 +98,10 @@ public class LogEvent implements Compara
     }
 
     /**
-     * Returns the unique log ID of the log. This ID is unique within a target.
+     * Returns the unique storeID. This ID is unique within a target.
      */
-    public long getLogID() {
-        return m_logID;
+    public long getStoreID() {
+        return m_storeID;
     }
 
     /**
@@ -135,29 +136,29 @@ public class LogEvent implements Compara
         if (o == this) {
             return true;
         }
-        if (o instanceof LogEvent) {
-            LogEvent event = (LogEvent) o;
+        if (o instanceof Event) {
+            Event event = (Event) o;
             return m_targetID.equals(event.m_targetID)
-                && m_logID == event.m_logID && m_id == event.m_id;
+                && m_storeID == event.m_storeID && m_id == event.m_id;
         }
 
         return false;
     }
 
     public int hashCode() {
-        return (int) (m_targetID.hashCode() + m_logID + m_id);
+        return (int) (m_targetID.hashCode() + m_storeID + m_id);
     }
 
     public int compareTo(Object o) {
-        LogEvent e = (LogEvent) o;
+        Event e = (Event) o;
         final int cmp = m_targetID.compareTo(e.m_targetID);
         if (cmp != 0) {
             return cmp;
         }
-        if (m_logID < e.m_logID) {
+        if (m_storeID < e.m_storeID) {
             return -1;
         }
-        if (m_logID > e.m_logID) {
+        if (m_storeID > e.m_storeID) {
             return 1;
         }
         if (m_id < e.m_id) {

Added: ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/packageinfo
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/packageinfo?rev=1528066&view=auto
==============================================================================
--- ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/packageinfo (added)
+++ ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/packageinfo Tue Oct  1 12:33:09 2013
@@ -0,0 +1 @@
+version 1.0
\ No newline at end of file

Copied: ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/util/Codec.java (from r1527533, ace/trunk/org.apache.ace.log/src/org/apache/ace/log/util/Codec.java)
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/util/Codec.java?p2=ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/util/Codec.java&p1=ace/trunk/org.apache.ace.log/src/org/apache/ace/log/util/Codec.java&r1=1527533&r2=1528066&rev=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.log/src/org/apache/ace/log/util/Codec.java (original)
+++ ace/trunk/org.apache.ace.feedback.common/src/org/apache/ace/feedback/util/Codec.java Tue Oct  1 12:33:09 2013
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.ace.log.util;
+package org.apache.ace.feedback.util;
 
 import java.text.CharacterIterator;
 import java.text.StringCharacterIterator;

Modified: ace/trunk/org.apache.ace.http.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.http.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.http.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.http.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -4,14 +4,14 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	osgi.cmpn,\
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.test;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.discovery.api;version=latest,\
 	org.apache.ace.discovery.property;version=latest,\
 	org.apache.ace.identification.api;version=latest,\
 	org.apache.ace.identification.property;version=latest,\
 	org.apache.ace.log.server.store.api;version=latest,\
-	javax.servlet
+	javax.servlet,\
+	org.apache.ace.feedback.common;version=latest
 -runfw: org.apache.felix.framework;version='[4,5)'
 -runvm: -ea
 -runbundles: osgi.cmpn,\

Modified: ace/trunk/org.apache.ace.log.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.log.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.log.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.log.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -4,16 +4,16 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	osgi.cmpn,\
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.test;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.discovery.api;version=latest,\
 	org.apache.ace.discovery.property;version=latest,\
 	org.apache.ace.identification.api;version=latest,\
 	org.apache.ace.identification.property;version=latest,\
-	org.apache.ace.log.server.store.api;version=latest
+	org.apache.ace.log.server.store.api;version=latest,\
+	org.apache.ace.feedback.common;version=latest,\
+	org.apache.ace.log.api;version=latest
 -runfw: org.apache.felix.framework;version='[4,5)'
--runbundles: \
-	javax.servlet,\
+-runbundles: javax.servlet,\
 	osgi.cmpn,\
 	org.apache.felix.dependencymanager,\
 	org.apache.felix.configadmin,\
@@ -34,7 +34,6 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.http.listener;version=latest,\
 	org.apache.ace.identification.api;version=latest,\
 	org.apache.ace.identification.property;version=latest,\
-	org.apache.ace.log.api;version=latest,\
 	org.apache.ace.log.listener;version=latest,\
 	org.apache.ace.log.server.store.api;version=latest,\
 	org.apache.ace.log.server.store.file;version=latest,\
@@ -43,7 +42,10 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.range.api;version=latest,\
 	org.apache.ace.repository.api;version=latest,\
 	org.apache.ace.resourceprocessor.useradmin;version=latest,\
-	org.apache.ace.test;version=latest
+	org.apache.ace.test;version=latest,\
+	org.apache.ace.feedback.common;version=latest,\
+	org.apache.ace.log.api;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 Private-Package: org.apache.ace.it.log
 Bundle-Version: 1.0.0
 Bundle-Name: Apache ACE Log itest

Modified: ace/trunk/org.apache.ace.log.itest/src/org/apache/ace/it/log/LogIntegrationTest.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.log.itest/src/org/apache/ace/it/log/LogIntegrationTest.java?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.log.itest/src/org/apache/ace/it/log/LogIntegrationTest.java (original)
+++ ace/trunk/org.apache.ace.log.itest/src/org/apache/ace/it/log/LogIntegrationTest.java Tue Oct  1 12:33:09 2013
@@ -18,21 +18,18 @@
  */
 package org.apache.ace.it.log;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Properties;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.ace.discovery.property.constants.DiscoveryConstants;
+import org.apache.ace.feedback.Descriptor;
+import org.apache.ace.feedback.Event;
 import org.apache.ace.http.listener.constants.HttpConstants;
 import org.apache.ace.identification.property.constants.IdentificationConstants;
 import org.apache.ace.it.IntegrationTestBase;
 import org.apache.ace.log.Log;
-import org.apache.ace.log.LogDescriptor;
-import org.apache.ace.log.LogEvent;
 import org.apache.ace.log.server.store.LogStore;
 import org.apache.ace.test.constants.TestConstants;
 import org.apache.felix.dm.Component;
@@ -112,14 +109,14 @@ public class LogIntegrationTest extends 
             m_auditLogSyncTask.run();
 
             // get and evaluate results (note that there is some concurrency that might interfere with this test)
-            List<LogDescriptor> ranges2 = m_serverStore.getDescriptors();
+            List<Descriptor> ranges2 = m_serverStore.getDescriptors();
             if (ranges2.size() > 0) {
             	assertEquals("We should still have audit log events for one target on the server, but found " + ranges2.size(), 1, ranges2.size()); 
-                LogDescriptor range = ranges2.get(0);
-                List<LogEvent> events = m_serverStore.get(range);
+                Descriptor range = ranges2.get(0);
+                List<Event> events = m_serverStore.get(range);
                 if (events.size() > 1) {
                 	assertTrue("We should have a couple of events, at least more than the one we added ourselves.", events.size() > 1);
-                    for (LogEvent event : events) {
+                    for (Event event : events) {
                         if (event.getType() == 12345) {
                             assertEquals("We could not retrieve a property of our audit log event.", "value2", event.getProperties().get("two"));
                             found = true;
@@ -139,11 +136,11 @@ public class LogIntegrationTest extends 
 
     private void doTestServlet() throws Exception {
         // prepare the store
-        List<LogEvent> events = new ArrayList<LogEvent>();
-        events.add(new LogEvent("42", 1, 1, 1, 1, new Properties()));
-        events.add(new LogEvent("47", 1, 1, 1, 1, new Properties()));
-        events.add(new LogEvent("47", 2, 1, 1, 1, new Properties()));
-        events.add(new LogEvent("47", 2, 2, 1, 1, new Properties()));
+        List<Event> events = new ArrayList<Event>();
+        events.add(new Event("42", 1, 1, 1, 1, new Properties()));
+        events.add(new Event("47", 1, 1, 1, 1, new Properties()));
+        events.add(new Event("47", 2, 1, 1, 1, new Properties()));
+        events.add(new Event("47", 2, 2, 1, 1, new Properties()));
         m_serverStore.put(events);
 
         List<String> result = getResponse("http://localhost:" + TestConstants.PORT + "/auditlog/query");

Modified: ace/trunk/org.apache.ace.log.server.store.itest/bnd.bnd
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.log.server.store.itest/bnd.bnd?rev=1528066&r1=1528065&r2=1528066&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.log.server.store.itest/bnd.bnd (original)
+++ ace/trunk/org.apache.ace.log.server.store.itest/bnd.bnd Tue Oct  1 12:33:09 2013
@@ -15,12 +15,12 @@ Test-Cases: ${classes;CONCRETE;EXTENDS;o
 	org.apache.ace.log.server.store.api;version=latest,\
 	org.apache.ace.log.server.store.mongo;version=latest,\
 	org.apache.ace.range.api;version=latest,\
-	org.apache.ace.test;version=latest
+	org.apache.ace.test;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 Private-Package: org.apache.ace.log.server.store.tests
 -runvm: -ea
 -runfw: org.apache.felix.framework;version='[4,5)'
--buildpath: \
-	osgi.core,\
+-buildpath: osgi.core,\
 	osgi.cmpn,\
 	junit.osgi,\
 	com.mongodb,\
@@ -29,8 +29,8 @@ Private-Package: org.apache.ace.log.serv
 	org.apache.felix.dependencymanager,\
 	org.apache.ace.range.api;version=latest,\
 	org.apache.ace.test;version=latest,\
-	org.apache.ace.log.api;version=latest,\
-	org.apache.ace.log.server.store.api;version=latest
+	org.apache.ace.log.server.store.api;version=latest,\
+	org.apache.ace.feedback.common;version=latest
 -runsystempackages: sun.reflect
 Bundle-Version: 1.0.0
 Bundle-Name: Apache ACE Log Server Store itest