diff --git a/changelog.html b/changelog.html
index 78e7aef..b558262 100644
--- a/changelog.html
+++ b/changelog.html
@@ -43,6 +43,12 @@
Onesocialweb Plugin Changelog
+0.7.0 -- (tbd)
+
+ - Now requires Openfire 4.8.0
+ - Fixes issue #6: Fix compatibility issue with Openfire 4.9.0
+
+
0.6 -- April 1st, 2010
- First public release.
diff --git a/plugin.xml b/plugin.xml
index 3c577d5..9f82f02 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -8,6 +8,6 @@
http://onesocialweb.org
${pom.version}
${openfire-plugin.build.date}
- 3.7.1
+ 4.8.0
apache
diff --git a/pom.xml b/pom.xml
index fcd80f8..1c885e0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
plugins
org.igniterealtime.openfire
- 4.7.1
+ 4.8.0
org.onesocialweb
diff --git a/readme.md b/readme.md
index 0392810..7c9595f 100644
--- a/readme.md
+++ b/readme.md
@@ -2,7 +2,7 @@
-This is the revived onesocialweb project for Openfire 4.7.1+. It includes:
+This is the revived onesocialweb project for Openfire 4.8.0+. It includes:
- the Openfire plugin
- the web client which can be accessed with https://your-server:7443/osw.
diff --git a/src/java/org/onesocialweb/openfire/OswPlugin.java b/src/java/org/onesocialweb/openfire/OswPlugin.java
index c37c201..deb37cd 100644
--- a/src/java/org/onesocialweb/openfire/OswPlugin.java
+++ b/src/java/org/onesocialweb/openfire/OswPlugin.java
@@ -17,6 +17,7 @@
package org.onesocialweb.openfire;
import java.io.File;
+import java.nio.file.Path;
import java.sql.DatabaseMetaData;
import java.sql.SQLException;
import java.util.Hashtable;
@@ -208,7 +209,7 @@ private void setConnectionProperties() {
}
}
- String logFile = JiveGlobals.getHomeDirectory() + "/logs/osw_openjpa.log";
+ Path logFile = JiveGlobals.getHomePath().resolve("logs").resolve("osw_openjpa.log");
String debugLevel = "INFO";
if (Log.isDebugEnabled()) {
@@ -221,7 +222,7 @@ private void setConnectionProperties() {
connProperties.put("openjpa.ConnectionUserName", username);
connProperties.put("openjpa.ConnectionPassword", password);
- connProperties.put("openjpa.Log", "DefaultLevel=" + debugLevel + ", Tool=" + debugLevel + ", SQL=" + debugLevel + ", File=" + logFile);
+ connProperties.put("openjpa.Log", "DefaultLevel=" + debugLevel + ", Tool=" + debugLevel + ", SQL=" + debugLevel + ", File=" + logFile.toAbsolutePath());
connProperties.put("openjpa.jdbc.SynchronizeMappings", "buildSchema(ForeignKeys=true)");
connProperties.put("openjpa.Multithreaded", "true");
diff --git a/src/java/org/onesocialweb/openfire/handler/MessageEventInterceptor.java b/src/java/org/onesocialweb/openfire/handler/MessageEventInterceptor.java
index 31a3c35..bd553a8 100644
--- a/src/java/org/onesocialweb/openfire/handler/MessageEventInterceptor.java
+++ b/src/java/org/onesocialweb/openfire/handler/MessageEventInterceptor.java
@@ -75,9 +75,9 @@ public void interceptPacket(Packet packet, Session session,
return;
}
- // We only care for messaes to local users
+ // We only care for messages to local users
if (!server.isLocal(toJID)
- || !server.getUserManager().isRegisteredUser(toJID)) {
+ || !server.getUserManager().isRegisteredUser(toJID, false)) {
return;
}
diff --git a/src/java/org/onesocialweb/openfire/handler/activity/ActivityDeleteHandler.java b/src/java/org/onesocialweb/openfire/handler/activity/ActivityDeleteHandler.java
index ec38995..c6fab49 100644
--- a/src/java/org/onesocialweb/openfire/handler/activity/ActivityDeleteHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/activity/ActivityDeleteHandler.java
@@ -66,7 +66,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
}
// Only a local user can delete an activity to his stream
- if (!userManager.isRegisteredUser(sender.getNode())) {
+ if (!userManager.isRegisteredUser(sender, false)) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.not_authorized);
diff --git a/src/java/org/onesocialweb/openfire/handler/activity/ActivityPublishHandler.java b/src/java/org/onesocialweb/openfire/handler/activity/ActivityPublishHandler.java
index c35bb25..89da629 100644
--- a/src/java/org/onesocialweb/openfire/handler/activity/ActivityPublishHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/activity/ActivityPublishHandler.java
@@ -83,7 +83,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
}
// Only a local user can publish an activity to his stream
- if (!userManager.isRegisteredUser(sender.getNode())) {
+ if (!userManager.isRegisteredUser(sender, false)) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.not_authorized);
diff --git a/src/java/org/onesocialweb/openfire/handler/activity/ActivityQueryHandler.java b/src/java/org/onesocialweb/openfire/handler/activity/ActivityQueryHandler.java
index b47ee13..465ca13 100644
--- a/src/java/org/onesocialweb/openfire/handler/activity/ActivityQueryHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/activity/ActivityQueryHandler.java
@@ -70,7 +70,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
// A valid request is an IQ of type get, for a valid and local recipient
if (!(packet.getType().equals(IQ.Type.get) && target != null && target.getNode() != null
- && userManager.isRegisteredUser(target.getNode()))) {
+ && userManager.isRegisteredUser(target, false))) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.bad_request);
diff --git a/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribeHandler.java b/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribeHandler.java
index 6347c23..a3424e2 100644
--- a/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribeHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribeHandler.java
@@ -60,7 +60,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
// A valid request is an IQ of type set, for a valid and local recipient
if (!(packet.getType().equals(IQ.Type.set) && recipient != null && recipient.getNode() != null
- && userManager.isRegisteredUser(recipient.getNode()))) {
+ && userManager.isRegisteredUser(recipient, false))) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.bad_request);
diff --git a/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribersHandler.java b/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribersHandler.java
index 2b96e34..b56b0ac 100644
--- a/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribersHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscribersHandler.java
@@ -67,7 +67,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
// A valid request is an IQ of type get, for a valid and local recipient
if (!(packet.getType().equals(IQ.Type.get) && recipient != null && recipient.getNode() != null
- && userManager.isRegisteredUser(recipient.getNode()))) {
+ && userManager.isRegisteredUser(recipient, false))) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.bad_request);
diff --git a/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscriptionsHandler.java b/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscriptionsHandler.java
index e3014e0..a240b4c 100644
--- a/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscriptionsHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/activity/ActivitySubscriptionsHandler.java
@@ -68,7 +68,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
// A valid request is an IQ of type get, for a valid and local recipient
if (!(packet.getType().equals(IQ.Type.get) && recipient != null && recipient.getNode() != null
- && userManager.isRegisteredUser(recipient.getNode()))) {
+ && userManager.isRegisteredUser(recipient, false))) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.bad_request);
diff --git a/src/java/org/onesocialweb/openfire/handler/activity/ActivityUnsubscribeHandler.java b/src/java/org/onesocialweb/openfire/handler/activity/ActivityUnsubscribeHandler.java
index a1475f0..5efdad5 100644
--- a/src/java/org/onesocialweb/openfire/handler/activity/ActivityUnsubscribeHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/activity/ActivityUnsubscribeHandler.java
@@ -60,7 +60,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
// A valid request is an IQ of type set, for a valid and local recipient
if (!(packet.getType().equals(IQ.Type.set) && recipient != null && recipient.getNode() != null
- && userManager.isRegisteredUser(recipient.getNode()))) {
+ && userManager.isRegisteredUser(recipient, false))) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.bad_request);
diff --git a/src/java/org/onesocialweb/openfire/handler/commenting/CommentPublishHandler.java b/src/java/org/onesocialweb/openfire/handler/commenting/CommentPublishHandler.java
index f877a3a..849f8d5 100644
--- a/src/java/org/onesocialweb/openfire/handler/commenting/CommentPublishHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/commenting/CommentPublishHandler.java
@@ -68,7 +68,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
}
// Only a local user can publish an activity to his stream
- if (!userManager.isRegisteredUser(sender.getNode())) {
+ if (!userManager.isRegisteredUser(sender, false)) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.not_authorized);
diff --git a/src/java/org/onesocialweb/openfire/handler/inbox/InboxQueryHandler.java b/src/java/org/onesocialweb/openfire/handler/inbox/InboxQueryHandler.java
index 8d974db..a6fe820 100644
--- a/src/java/org/onesocialweb/openfire/handler/inbox/InboxQueryHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/inbox/InboxQueryHandler.java
@@ -83,7 +83,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
}
// Only a local user has an inbox
- if (!userManager.isRegisteredUser(sender.getNode())) {
+ if (!userManager.isRegisteredUser(sender, false)) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.not_authorized);
diff --git a/src/java/org/onesocialweb/openfire/handler/profile/IQProfilePublishHandler.java b/src/java/org/onesocialweb/openfire/handler/profile/IQProfilePublishHandler.java
index 931a406..4ea1131 100644
--- a/src/java/org/onesocialweb/openfire/handler/profile/IQProfilePublishHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/profile/IQProfilePublishHandler.java
@@ -81,7 +81,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
}
// Only a local user can publish its profile
- if (!userManager.isRegisteredUser(sender.getNode())) {
+ if (!userManager.isRegisteredUser(sender, false)) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.not_authorized);
diff --git a/src/java/org/onesocialweb/openfire/handler/profile/IQProfileQueryHandler.java b/src/java/org/onesocialweb/openfire/handler/profile/IQProfileQueryHandler.java
index af15be4..6bf2d16 100644
--- a/src/java/org/onesocialweb/openfire/handler/profile/IQProfileQueryHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/profile/IQProfileQueryHandler.java
@@ -72,7 +72,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
// A valid request is an IQ of type get, for a valid and local recipient
if (!(packet.getType().equals(IQ.Type.get) && target != null && target.getNode() != null
- && userManager.isRegisteredUser(target.getNode()))) {
+ && userManager.isRegisteredUser(target, false))) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.bad_request);
diff --git a/src/java/org/onesocialweb/openfire/handler/relation/IQRelationQueryHandler.java b/src/java/org/onesocialweb/openfire/handler/relation/IQRelationQueryHandler.java
index 53d4b50..d5b48d8 100644
--- a/src/java/org/onesocialweb/openfire/handler/relation/IQRelationQueryHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/relation/IQRelationQueryHandler.java
@@ -73,7 +73,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
// A valid request is an IQ of type get, for a valid and local recipient
if (!(packet.getType().equals(IQ.Type.get) && target != null && target.getNode() != null
- && userManager.isRegisteredUser(target.getNode()))) {
+ && userManager.isRegisteredUser(target, false))) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.bad_request);
diff --git a/src/java/org/onesocialweb/openfire/handler/relation/IQRelationSetupHandler.java b/src/java/org/onesocialweb/openfire/handler/relation/IQRelationSetupHandler.java
index 58f38c8..5c59052 100644
--- a/src/java/org/onesocialweb/openfire/handler/relation/IQRelationSetupHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/relation/IQRelationSetupHandler.java
@@ -89,7 +89,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
}
// Only a local user can publish an activity to his stream
- if (!userManager.isRegisteredUser(sender.getNode())) {
+ if (!userManager.isRegisteredUser(sender, false)) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.not_authorized);
diff --git a/src/java/org/onesocialweb/openfire/handler/relation/IQRelationUpdateHandler.java b/src/java/org/onesocialweb/openfire/handler/relation/IQRelationUpdateHandler.java
index 8441c83..27b87a1 100644
--- a/src/java/org/onesocialweb/openfire/handler/relation/IQRelationUpdateHandler.java
+++ b/src/java/org/onesocialweb/openfire/handler/relation/IQRelationUpdateHandler.java
@@ -72,7 +72,7 @@ public IQ handleIQ(IQ packet) throws UnauthorizedException {
try {
// Only a local user can request to update a relation
- if (!userManager.isRegisteredUser(sender.getNode())) {
+ if (!userManager.isRegisteredUser(sender, false)) {
IQ result = IQ.createResultIQ(packet);
result.setChildElement(packet.getChildElement().createCopy());
result.setError(PacketError.Condition.not_authorized);
diff --git a/src/java/org/onesocialweb/openfire/web/SessionValidator.java b/src/java/org/onesocialweb/openfire/web/SessionValidator.java
index a35fd20..78bd890 100644
--- a/src/java/org/onesocialweb/openfire/web/SessionValidator.java
+++ b/src/java/org/onesocialweb/openfire/web/SessionValidator.java
@@ -53,7 +53,7 @@ private boolean validateLocalSession(String jid, String signature) {
}
// Is the session authenticated ?
- if (session.getStatus() != Session.STATUS_AUTHENTICATED) {
+ if (session.getStatus() != Session.Status.AUTHENTICATED) {
return false;
}