diff --git a/source/org/jivesoftware/smack/SmackConfiguration.java b/source/org/jivesoftware/smack/SmackConfiguration.java
index 3aab393e2..9c0d95ffe 100644
--- a/source/org/jivesoftware/smack/SmackConfiguration.java
+++ b/source/org/jivesoftware/smack/SmackConfiguration.java
@@ -79,8 +79,6 @@ public final class SmackConfiguration {
private static int packetReplyTimeout = 5000;
private static int keepAliveInterval = 30000;
- private static String identityName = "Smack";
- private static String identityType = "pc";
private SmackConfiguration() {
}
@@ -122,12 +120,6 @@ public final class SmackConfiguration {
else if (parser.getName().equals("keepAliveInterval")) {
keepAliveInterval = parseIntProperty(parser, keepAliveInterval);
}
- else if (parser.getName().equals("identityName")) {
- identityName = parser.nextText();
- }
- else if (parser.getName().equals("identityType")) {
- identityType = parser.nextText();
- }
}
eventType = parser.next();
}
@@ -203,52 +195,6 @@ public final class SmackConfiguration {
keepAliveInterval = interval;
}
- /**
- * Returns the name of the client that will be returned when asked for the client identity
- * in a disco request. The name could be any value you need to identity this client.
- *
- * @return the name of the client that will be returned when asked for the client identity
- * in a disco request.
- */
- public static String getIdentityName() {
- return identityName;
- }
-
- /**
- * Sets the name of the client that will be returned when asked for the client identity
- * in a disco request. The name could be any value you need to identity this client.
- *
- * @param name the name of the client that will be returned when asked for the client identity
- * in a disco request.
- */
- public static void setIdentityName(String name) {
- identityName = name;
- }
-
- /**
- * Returns the type of client that will be returned when asked for the client identity in a
- * disco request. The valid types are defined by the category client. Follow this link to learn
- * the possible types: Jabber::Registrar.
- *
- * @return the type of client that will be returned when asked for the client identity in a
- * disco request.
- */
- public static String getIdentityType() {
- return identityType;
- }
-
- /**
- * Sets the type of client that will be returned when asked for the client identity in a
- * disco request. The valid types are defined by the category client. Follow this link to learn
- * the possible types: Jabber::Registrar.
- *
- * @param type the type of client that will be returned when asked for the client identity in a
- * disco request.
- */
- public static void setIdentityType(String type) {
- identityType = type;
- }
-
private static void parseClassToLoad(XmlPullParser parser) throws Exception {
String className = parser.nextText();
// Attempt to load the class so that the class can get initialized
diff --git a/source/org/jivesoftware/smackx/ServiceDiscoveryManager.java b/source/org/jivesoftware/smackx/ServiceDiscoveryManager.java
index c381e740d..ea2f8f4d6 100644
--- a/source/org/jivesoftware/smackx/ServiceDiscoveryManager.java
+++ b/source/org/jivesoftware/smackx/ServiceDiscoveryManager.java
@@ -72,6 +72,9 @@ import org.jivesoftware.smackx.packet.*;
*/
public class ServiceDiscoveryManager {
+ private static String identityName = "Smack";
+ private static String identityType = "pc";
+
private static Map instances = new Hashtable();
private XMPPConnection connection;
@@ -109,6 +112,52 @@ public class ServiceDiscoveryManager {
return (ServiceDiscoveryManager) instances.get(connection);
}
+ /**
+ * Returns the name of the client that will be returned when asked for the client identity
+ * in a disco request. The name could be any value you need to identity this client.
+ *
+ * @return the name of the client that will be returned when asked for the client identity
+ * in a disco request.
+ */
+ public static String getIdentityName() {
+ return identityName;
+ }
+
+ /**
+ * Sets the name of the client that will be returned when asked for the client identity
+ * in a disco request. The name could be any value you need to identity this client.
+ *
+ * @param name the name of the client that will be returned when asked for the client identity
+ * in a disco request.
+ */
+ public static void setIdentityName(String name) {
+ identityName = name;
+ }
+
+ /**
+ * Returns the type of client that will be returned when asked for the client identity in a
+ * disco request. The valid types are defined by the category client. Follow this link to learn
+ * the possible types: Jabber::Registrar.
+ *
+ * @return the type of client that will be returned when asked for the client identity in a
+ * disco request.
+ */
+ public static String getIdentityType() {
+ return identityType;
+ }
+
+ /**
+ * Sets the type of client that will be returned when asked for the client identity in a
+ * disco request. The valid types are defined by the category client. Follow this link to learn
+ * the possible types: Jabber::Registrar.
+ *
+ * @param type the type of client that will be returned when asked for the client identity in a
+ * disco request.
+ */
+ public static void setIdentityType(String type) {
+ identityType = type;
+ }
+
/**
* Initializes the packet listeners of the connection that will answer to any
* service discovery request.
@@ -171,8 +220,8 @@ public class ServiceDiscoveryManager {
response.setPacketID(discoverInfo.getPacketID());
// Set this client identity
DiscoverInfo.Identity identity = new DiscoverInfo.Identity("client",
- SmackConfiguration.getIdentityName());
- identity.setType(SmackConfiguration.getIdentityType());
+ getIdentityName());
+ identity.setType(getIdentityType());
response.addIdentity(identity);
// Add the registered features to the response
synchronized (features) {
diff --git a/test/org/jivesoftware/smackx/ServiceDiscoveryManagerTest.java b/test/org/jivesoftware/smackx/ServiceDiscoveryManagerTest.java
index 6ae39291f..269aa02ea 100644
--- a/test/org/jivesoftware/smackx/ServiceDiscoveryManagerTest.java
+++ b/test/org/jivesoftware/smackx/ServiceDiscoveryManagerTest.java
@@ -89,10 +89,10 @@ public class ServiceDiscoveryManagerTest extends SmackTestCase {
Iterator identities = info.getIdentities();
assertTrue("No identities were found", identities.hasNext());
DiscoverInfo.Identity identity = (DiscoverInfo.Identity)identities.next();
- assertEquals("Name in identity is wrong", SmackConfiguration.getIdentityName(),
+ assertEquals("Name in identity is wrong", ServiceDiscoveryManager.getIdentityName(),
identity.getName());
assertEquals("Category in identity is wrong", "client", identity.getCategory());
- assertEquals("Type in identity is wrong", SmackConfiguration.getIdentityType(),
+ assertEquals("Type in identity is wrong", ServiceDiscoveryManager.getIdentityType(),
identity.getType());
assertFalse("More identities were found", identities.hasNext());
}