Author: frm
Date: Tue Oct 4 08:55:46 2016
New Revision: 1763247
URL: http://svn.apache.org/viewvc?rev=1763247&view=rev
Log:
OAK-4877 - Fail loudly if the PID of the old Cold Standby service is detected
Contribution by Timothee Maret
Added:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/DeprecationMessage.java
(with props)
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/StandbyStoreServiceDeprecationError.java
(with props)
Modified:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/SegmentNodeStoreServiceDeprecationError.java
Added:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/DeprecationMessage.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/DeprecationMessage.java?rev=1763247&view=auto
==============================================================================
---
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/DeprecationMessage.java
(added)
+++
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/DeprecationMessage.java
Tue Oct 4 08:55:46 2016
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jackrabbit.oak.segment.osgi;
+
+class DeprecationMessage {
+
+ private static final String MOVED_PID_FORMAT = "Deprecated configuration
detected!\n\n" +
+ " A configuration for %s\n" +
+ " was detected. The oak-segment bundle used to contain this
component,\n" +
+ " but the bundle is now deprecated and should not be included in
your\n" +
+ " deployment. The oak-segment-tar bundle exposes an equivalent
and improved\n" +
+ " functionality but you need to rename your configuration to
target the\n" +
+ " new component using the PID %s.\n";
+
+ static String movedPid(String oldPid, String newPid) {
+ return String.format(MOVED_PID_FORMAT, oldPid, newPid);
+ }
+
+}
Propchange:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/DeprecationMessage.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/SegmentNodeStoreServiceDeprecationError.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/SegmentNodeStoreServiceDeprecationError.java?rev=1763247&r1=1763246&r2=1763247&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/SegmentNodeStoreServiceDeprecationError.java
(original)
+++
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/SegmentNodeStoreServiceDeprecationError.java
Tue Oct 4 08:55:46 2016
@@ -37,17 +37,13 @@ public class SegmentNodeStoreServiceDepr
private static final Logger logger =
LoggerFactory.getLogger(SegmentNodeStoreServiceDeprecationError.class);
- private static final String msg = "Deprecated configuration detected!\n\n"
+
- " A configuration for
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStoreService\n" +
- " was detected. The oak-segment bundle used to contain this
component,\n" +
- " but the bundle is now deprecated and should not be included in
your\n" +
- " deployment. The oak-segment-tar bundle exposes an equivalent
and improved\n" +
- " functionality but you need to rename your configuration to
target the\n" +
- " new component using the PID
org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.\n";
+ private static final String OLD_PID =
"org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStoreService";
+
+ private static final String NEW_PID =
"org.apache.jackrabbit.oak.segment.SegmentNodeStoreService";
@Activate
public void activate() {
- logger.error(msg);
+ logger.error(DeprecationMessage.movedPid(OLD_PID, NEW_PID));
}
}
Added:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/StandbyStoreServiceDeprecationError.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/StandbyStoreServiceDeprecationError.java?rev=1763247&view=auto
==============================================================================
---
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/StandbyStoreServiceDeprecationError.java
(added)
+++
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/StandbyStoreServiceDeprecationError.java
Tue Oct 4 08:55:46 2016
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jackrabbit.oak.segment.osgi;
+
+import org.apache.felix.scr.annotations.Activate;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.ConfigurationPolicy;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * This component is activated when a configuration for the deprecated {@code
+ * StandbyStoreService} from {@code oak-segment} is detected. When this
+ * component is activated, it prints a detailed error message describing the
+ * detected problem and hinting at a possible solution.
+ */
+@Component(
+ policy = ConfigurationPolicy.REQUIRE,
+ configurationPid =
"org.apache.jackrabbit.oak.plugins.segment.standby.store.StandbyStoreService"
+)
+public class StandbyStoreServiceDeprecationError {
+
+ private static final Logger logger =
LoggerFactory.getLogger(StandbyStoreServiceDeprecationError.class);
+
+ private static final String OLD_PID =
"org.apache.jackrabbit.oak.plugins.segment.standby.store.StandbyStoreService";
+
+ private static final String NEW_PID =
"org.apache.jackrabbit.oak.segment.standby.store.StandbyStoreService";
+
+ @Activate
+ public void activate() {
+ logger.error(DeprecationMessage.movedPid(OLD_PID, NEW_PID));
+ }
+
+}
Propchange:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/osgi/StandbyStoreServiceDeprecationError.java
------------------------------------------------------------------------------
svn:eol-style = native