@Override public BareJID getSeeOtherHostForJID(BareJID fromJID, Phase ph) { if (see_other_host_strategy == null) { if (log.isLoggable(Level.FINEST)) { log.finest("no see-other-host implementation set"); } return null; } if (!see_other_host_strategy.isEnabled(vHostManager.getVHostItem(fromJID.getDomain()), ph)) { if (log.isLoggable(Level.FINEST)) { log.finest("see-other-host not enabled for the Phase: " + ph.toString()); } return null; } BareJID see_other_host = see_other_host_strategy.findHostForJID(fromJID, getDefHostName()); if (log.isLoggable(Level.FINEST)) { log.finest( "using = " + see_other_host_strategy.getClass().getCanonicalName() + "for jid = " + fromJID.toString() + " got = " + ((see_other_host != null) ? see_other_host.toString() : "null") + " in phase: " + ph.toString()); } return ((see_other_host != null) && !see_other_host.equals(getDefHostName())) ? see_other_host : null; }
@Override public List<Element> getDiscoItems(String node, JID jid, JID from) { if (isAdmin(from)) { if (getName().equals(jid.getLocalpart())) { return serviceEntity.getDiscoItems(node, jid.toString()); } else { if (node == null) { return Arrays.asList( serviceEntity.getDiscoItem(null, BareJID.toString(getName(), jid.toString()))); } else { return null; } } } return null; }