jackrabbit-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ju...@apache.org
Subject svn commit: r800881 - in /jackrabbit/branches/1.x: ./ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/
Date Tue, 04 Aug 2009 17:21:35 GMT
Author: jukka
Date: Tue Aug  4 17:21:35 2009
New Revision: 800881

URL: http://svn.apache.org/viewvc?rev=800881&view=rev
Log:
1.x: Merged revision 794253 (JCR-2213)

Modified:
    jackrabbit/branches/1.x/   (props changed)
    jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ChangeLogRecord.java
    jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ClusterSession.java
    jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/ClusterRecordTest.java
    jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/UpdateEventFactory.java

Propchange: jackrabbit/branches/1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Aug  4 17:21:35 2009
@@ -1,2 +1,2 @@
 /incubator/jackrabbit/trunk:78926
-/jackrabbit/trunk:770143-773197,773483,773525-773555,773584,773588,773828,773835-775756,775833,775836,775840,775868,775981,775986,776036,776256,776310,776313,776321-776322,776332,776356-776357,776362,776373,776650-776693,776737,776757,776776-776777,777024,777029,777034,777478,777509,777541,777548,777936,778445,778613,778616,778621,778645,778720,778802,779032,779040,779068-779071,779074,779076,779081,779084,779086-779088,779090-779092,779094-779096,779101,779223,779225,779227-779228,779230,779233-779234,779460,779475-779476,779504,779550,779552,779555,779561,779563,779583,779590,779618,779621-779622,779624,779642,779654,779657-779659,779661,779936,780006,780010,780025,780085,780985,780989,780993,781017,781051,781054,781294-781300,781305-781311,781318,781328,781338,781344,781347,781369,781372,781377,781416-781417,781423,782621-782622,782644,782646,782652,782669,782675,782677,782683,782694,782921,782925,782930,782936,783002,783004-783005,783042-783043,783239,783278,783304,78331
 9-783321,783324,783326-783327,783330-783333,783337-783338,783340-783341,783343,783345-783346,783356,783359,783383,783386,783412,783435,783444,783447,783523,783688,783703,783708,783710,783719,783757,783759,783761,783786,783809,784011,784013,784039,784058,784060-784061,784090-784091,784106,784108-784109,784111,784117-784120,784124,784163,784261,784680,784691,784696,784760,784824,785112,785116,785157,785169,785209,785492,785517,785519,785529,785533,785535,785539-785540,785545,785580,785589-785590,785594,785597,785602,785627,785629,785631,785635,785668,785711,785725,785777,785863,785981,786003,786019,786028,786062,786075,786089-786090,786093-786094,786144,786146-786147,786149,786167,786280,786295,786319,786329-786330,786336,786409,786419,786423,786480,786485,786492,786513,786562,786565,786680,786685,787183,787219,787241,787942,787952,787964,787996,788002,788012-788013,788350-788351,788443,788446,788450,789245,789257,789269-789270,789279,789307,789312,789324,789338,789347,789485,
 789629,789809,789986,790054,790056,790065-790066,790068,790070-790071,790118,790127,790153,790235-790236,790528,790537,790541,790557-790558,790568,790590,790600,790603,790629,790814,790826,790834,790887,790892,790901,790930,790939,791180,791253,791255,791438-791439,791441,791452,791457,791475,791505,791520,791527,791737,791832,791884,791906,792102,792118,792138,792152,792155-792156,792160,792167-792168,792175,792180-792181,792211,792214,792218,792437,792453,792464,792467,792469,792485,792488,792496,792498,792509,792547-792548,792588-792589,793012-793013,793015-793016,793018,793046-793047,793072,793180,793238,793243,793283,793485,793507,793559,793571,794162,796757,800807,800829,800854,800862-800863
+/jackrabbit/trunk:770143-773197,773483,773525-773555,773584,773588,773828,773835-775756,775833,775836,775840,775868,775981,775986,776036,776256,776310,776313,776321-776322,776332,776356-776357,776362,776373,776650-776693,776737,776757,776776-776777,777024,777029,777034,777478,777509,777541,777548,777936,778445,778613,778616,778621,778645,778720,778802,779032,779040,779068-779071,779074,779076,779081,779084,779086-779088,779090-779092,779094-779096,779101,779223,779225,779227-779228,779230,779233-779234,779460,779475-779476,779504,779550,779552,779555,779561,779563,779583,779590,779618,779621-779622,779624,779642,779654,779657-779659,779661,779936,780006,780010,780025,780085,780985,780989,780993,781017,781051,781054,781294-781300,781305-781311,781318,781328,781338,781344,781347,781369,781372,781377,781416-781417,781423,782621-782622,782644,782646,782652,782669,782675,782677,782683,782694,782921,782925,782930,782936,783002,783004-783005,783042-783043,783239,783278,783304,78331
 9-783321,783324,783326-783327,783330-783333,783337-783338,783340-783341,783343,783345-783346,783356,783359,783383,783386,783412,783435,783444,783447,783523,783688,783703,783708,783710,783719,783757,783759,783761,783786,783809,784011,784013,784039,784058,784060-784061,784090-784091,784106,784108-784109,784111,784117-784120,784124,784163,784261,784680,784691,784696,784760,784824,785112,785116,785157,785169,785209,785492,785517,785519,785529,785533,785535,785539-785540,785545,785580,785589-785590,785594,785597,785602,785627,785629,785631,785635,785668,785711,785725,785777,785863,785981,786003,786019,786028,786062,786075,786089-786090,786093-786094,786144,786146-786147,786149,786167,786280,786295,786319,786329-786330,786336,786409,786419,786423,786480,786485,786492,786513,786562,786565,786680,786685,787183,787219,787241,787942,787952,787964,787996,788002,788012-788013,788350-788351,788443,788446,788450,789245,789257,789269-789270,789279,789307,789312,789324,789338,789347,789485,
 789629,789809,789986,790054,790056,790065-790066,790068,790070-790071,790118,790127,790153,790235-790236,790528,790537,790541,790557-790558,790568,790590,790600,790603,790629,790814,790826,790834,790887,790892,790901,790930,790939,791180,791253,791255,791438-791439,791441,791452,791457,791475,791505,791520,791527,791737,791832,791884,791906,792102,792118,792138,792152,792155-792156,792160,792167-792168,792175,792180-792181,792211,792214,792218,792437,792453,792464,792467,792469,792485,792488,792496,792498,792509,792547-792548,792588-792589,793012-793013,793015-793016,793018,793046-793047,793072,793180,793238,793243,793283,793485,793507,793559,793571,793830,793836,793840,794162,794190,794193,794253,796757,800807,800829,800854,800862-800863

Modified: jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ChangeLogRecord.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ChangeLogRecord.java?rev=800881&r1=800880&r2=800881&view=diff
==============================================================================
--- jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ChangeLogRecord.java
(original)
+++ jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ChangeLogRecord.java
Tue Aug  4 17:21:35 2009
@@ -114,7 +114,7 @@
     /**
      * Last used session for event sources.
      */
-    private Session lastSession;
+    private ClusterSession lastSession;
 
     /**
      * Create a new instance of this class. Used when serializing.
@@ -358,7 +358,7 @@
      * @return session
      */
     private Session getOrCreateSession(String userId) {
-        if (lastSession == null || !lastSession.getUserID().equals(userId)) {
+        if (lastSession == null || !lastSession.isUserId(userId)) {
             lastSession = new ClusterSession(userId);
         }
         return lastSession;

Modified: jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ClusterSession.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ClusterSession.java?rev=800881&r1=800880&r2=800881&view=diff
==============================================================================
--- jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ClusterSession.java
(original)
+++ jackrabbit/branches/1.x/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster/ClusterSession.java
Tue Aug  4 17:21:35 2009
@@ -50,6 +50,22 @@
     }
 
     /**
+     * Returns <code>true</code> if the given <code>userId</code>
is the same as
+     * the {@link #userId} of this session.
+     *
+     * @param userId the user id or <code>null</code>.
+     * @return <code>true</code> if they are the same; <code>false</code>
+     *         otherwise.
+     */
+    boolean isUserId(String userId) {
+        if (userId == null) {
+            return this.userId == null;
+        } else {
+            return userId.equals(this.userId);
+        }
+    }
+
+    /**
      * {@inheritDoc}
      */
     public String getUserID() {
@@ -278,7 +294,7 @@
     public boolean equals(Object obj) {
         if (obj instanceof ClusterSession) {
             ClusterSession other = (ClusterSession) obj;
-            return userId.equals(other.userId);
+            return isUserId(other.userId);
         }
         return false;
     }

Modified: jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/ClusterRecordTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/ClusterRecordTest.java?rev=800881&r1=800880&r2=800881&view=diff
==============================================================================
--- jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/ClusterRecordTest.java
(original)
+++ jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/ClusterRecordTest.java
Tue Aug  4 17:21:35 2009
@@ -118,6 +118,25 @@
     }
 
     /**
+     * Test producing and consuming an update with a null userId
+     */
+    public void testUpdateOperationWithNullUserId() throws Exception {
+        UpdateEvent update = factory.createUpdateOperationWithNullUserId();
+
+        UpdateEventChannel channel = master.createUpdateChannel(DEFAULT_WORKSPACE);
+        channel.updateCreated(update);
+        channel.updatePrepared(update);
+        channel.updateCommitted(update, null);
+
+        SimpleEventListener listener = new SimpleEventListener();
+        slave.createUpdateChannel(DEFAULT_WORKSPACE).setListener(listener);
+        slave.sync();
+
+        assertEquals(1, listener.getClusterEvents().size());
+        assertEquals(listener.getClusterEvents().get(0), update);
+    }
+
+    /**
      * Test producing and consuming a lock operation.
      * @throws Exception
      */

Modified: jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/UpdateEventFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/UpdateEventFactory.java?rev=800881&r1=800880&r2=800881&view=diff
==============================================================================
--- jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/UpdateEventFactory.java
(original)
+++ jackrabbit/branches/1.x/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/cluster/UpdateEventFactory.java
Tue Aug  4 17:21:35 2009
@@ -111,10 +111,39 @@
         changes.deleted(n3);
 
         List events = new ArrayList();
-        events.add(createEventState(n1, Event.NODE_ADDED, "{}n1"));
-        events.add(createEventState(p1, n1, Event.PROPERTY_ADDED));
-        events.add(createEventState(p2, n2, Event.PROPERTY_REMOVED));
-        events.add(createEventState(n3, Event.NODE_REMOVED, "{}n3"));
+        events.add(createEventState(n1, Event.NODE_ADDED, "{}n1", session));
+        events.add(createEventState(p1, n1, Event.PROPERTY_ADDED, session));
+        events.add(createEventState(p2, n2, Event.PROPERTY_REMOVED, session));
+        events.add(createEventState(n3, Event.NODE_REMOVED, "{}n3", session));
+
+        return new UpdateEvent(changes, events, System.currentTimeMillis(), "user-data");
+    }
+
+    /**
+     * Create an update operation.
+     *
+     * @return update operation
+     */
+    public UpdateEvent createUpdateOperationWithNullUserId() {
+        NodeState n1 = createNodeState();
+        NodeState n2 = createNodeState();
+        NodeState n3 = createNodeState();
+        PropertyState p1 = createPropertyState(n1.getNodeId(), "{}a");
+        PropertyState p2 = createPropertyState(n2.getNodeId(), "{}b");
+
+        ChangeLog changes = new ChangeLog();
+        changes.added(n1);
+        changes.added(p1);
+        changes.deleted(p2);
+        changes.modified(n2);
+        changes.deleted(n3);
+
+        Session s = new ClusterSession(null);
+        List events = new ArrayList();
+        events.add(createEventState(n1, Event.NODE_ADDED, "{}n1", s));
+        events.add(createEventState(p1, n1, Event.PROPERTY_ADDED, s));
+        events.add(createEventState(p2, n2, Event.PROPERTY_REMOVED, s));
+        events.add(createEventState(n3, Event.NODE_REMOVED, "{}n3", s));
 
         return new UpdateEvent(changes, events, System.currentTimeMillis(), "user-data");
     }
@@ -154,9 +183,11 @@
      * @param n node state
      * @param type <code>Event.NODE_ADDED</code> or <code>Event.NODE_REMOVED</code>
      * @param name node name
+     * @param session the session that produced the event.
      * @return event state
      */
-    protected EventState createEventState(NodeState n, int type, String name) {
+    protected EventState createEventState(NodeState n, int type, String name,
+                                          Session session) {
         Path.Element relPath = pathFactory.createElement(nameFactory.create(name));
 
         switch (type) {
@@ -180,9 +211,11 @@
      * @param p property state
      * @param parent parent node state
      * @param type <code>Event.NODE_ADDED</code> or <code>Event.NODE_REMOVED</code>
+     * @param session the session that produces the event.
      * @return event state
      */
-    protected EventState createEventState(PropertyState p, NodeState parent, int type) {
+    protected EventState createEventState(PropertyState p, NodeState parent, int type,
+                                          Session session) {
         Path.Element relPath = pathFactory.createElement(p.getName());
 
         switch (type) {



Mime
View raw message