This is an automated email from the ASF dual-hosted git repository. solomax pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push: new f4b332a [OPENMEETINGS-2355] ghost streams should be fixed f4b332a is described below commit f4b332a64063f15ce1b8058584559d2e58b6ae77 Author: Maxim Solodovnik <solomax...@gmail.com> AuthorDate: Mon May 18 22:52:26 2020 +0700 [OPENMEETINGS-2355] ghost streams should be fixed --- .../openmeetings/web/admin/connection/ConnectionsPanel.java | 9 +-------- .../apache/openmeetings/web/admin/connection/KStreamDto.java | 9 +-------- .../main/java/org/apache/openmeetings/web/app/Application.java | 10 +++++++++- .../java/org/apache/openmeetings/web/app/ClientManager.java | 3 --- .../org/apache/openmeetings/web/app/WhiteboardManager.java | 3 --- 5 files changed, 11 insertions(+), 23 deletions(-) diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java index 270f809..3ba5697 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java @@ -49,16 +49,11 @@ import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.RepeatingView; import org.apache.wicket.model.ResourceModel; import org.apache.wicket.spring.injection.annot.SpringBean; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink; import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons; public class ConnectionsPanel extends AdminBasePanel { - - private static final Logger log = LoggerFactory.getLogger(ConnectionsPanel.class); - private static final long serialVersionUID = 1L; @SpringBean private ClientManager cm; @@ -85,11 +80,9 @@ public class ConnectionsPanel extends AdminBasePanel { l.addAll(cm.list()); Collection<KStreamDto> streams = streamProcessor.getStreams() .stream() - .map(kStream -> new KStreamDto("processor", kStream)) + .map(KStreamDto::new) .collect(Collectors.toList()); l.addAll(streams); - log.info("Retrieve all Streams, StreamProcessor has {} of streams", streams.size()); - return l; } diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java index cc6521d..5f87f68 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java @@ -36,8 +36,6 @@ import org.apache.openmeetings.db.entity.record.RecordingChunk.Type; */ public class KStreamDto implements IDataProviderEntity { private static final long serialVersionUID = 1L; - /** StreamProcessor or KurentoHandler list */ - private String source; private String sid; private String uid; @@ -49,8 +47,7 @@ public class KStreamDto implements IDataProviderEntity { private Long chunkId; private Type type; - public KStreamDto(String source, KStream kStream) { - this.source = source; + public KStreamDto(KStream kStream) { this.sid = kStream.getSid(); this.uid = kStream.getUid(); this.roomId = (kStream.getRoom() == null) ? null : kStream.getRoom().getRoomId(); @@ -66,10 +63,6 @@ public class KStreamDto implements IDataProviderEntity { return serialVersionUID; } - public String getSource() { - return source; - } - public String getSid() { return sid; } diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java index 630a710..2554e84 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java @@ -135,6 +135,7 @@ import com.googlecode.wicket.jquery.ui.plugins.wysiwyg.settings.WysiwygLibrarySe import com.hazelcast.cluster.Member; import com.hazelcast.cluster.MembershipEvent; import com.hazelcast.cluster.MembershipListener; +import com.hazelcast.config.Config; import com.hazelcast.config.XmlConfigBuilder; import com.hazelcast.core.Hazelcast; import com.hazelcast.core.HazelcastInstance; @@ -164,7 +165,7 @@ public class Application extends AuthenticatedWebApplication implements IApplica public static final String HASH_MAPPING = "/hash"; public static final String SIGNIN_MAPPING = "/signin"; public static final String NOTINIT_MAPPING = "/notinited"; - final HazelcastInstance hazelcast = Hazelcast.getOrCreateHazelcastInstance(new XmlConfigBuilder().build()); + HazelcastInstance hazelcast; private ITopic<IClusterWsMessage> hazelWsTopic; private String serverId; private String wsUrl; @@ -180,6 +181,8 @@ public class Application extends AuthenticatedWebApplication implements IApplica @Autowired private ClientManager cm; @Autowired + private WhiteboardManager wbManager; + @Autowired private AppointmentDao appointmentDao; @Override @@ -189,6 +192,9 @@ public class Application extends AuthenticatedWebApplication implements IApplica getApplicationSettings().setAccessDeniedPage(AccessDeniedPage.class); getComponentInstantiationListeners().add(new SpringComponentInjector(this, ctx, true)); + Config cfg = new XmlConfigBuilder().build(); + cfg.setClassLoader(getClass().getClassLoader()); + hazelcast = Hazelcast.getOrCreateHazelcastInstance(cfg); serverId = hazelcast.getName(); hazelcast.getCluster().getMembers().forEach(m -> { cm.serverAdded(m.getAttribute(NAME_ATTR_KEY), m.getAttribute(SERVER_URL_ATTR_KEY)); @@ -330,6 +336,8 @@ public class Application extends AuthenticatedWebApplication implements IApplica // Init all global config properties cfgDao.reinit(); + wbManager.init(); + cm.init(); // Init properties updateJpaAddresses(); diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java index c413b61..317f9ee 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java @@ -37,8 +37,6 @@ import java.util.function.Function; import java.util.function.Predicate; import java.util.stream.Collectors; -import javax.annotation.PostConstruct; - import org.apache.openmeetings.core.remote.KurentoHandler; import org.apache.openmeetings.db.dao.log.ConferenceLogDao; import org.apache.openmeetings.db.entity.basic.Client; @@ -101,7 +99,6 @@ public class ClientManager implements IClientManager { return app.hazelcast.getMap(INSTANT_TOKENS_KEY); } - @PostConstruct void init() { log.debug("Cluster:: PostConstruct"); onlineClients.putAll(map()); diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java index 01cc78a..8deaf90 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java @@ -35,8 +35,6 @@ import java.util.concurrent.TimeUnit; import java.util.function.BiConsumer; import java.util.function.Consumer; -import javax.annotation.PostConstruct; - import org.apache.openmeetings.core.util.WebSocketHelper; import org.apache.openmeetings.db.dao.label.LabelDao; import org.apache.openmeetings.db.dto.room.Whiteboard; @@ -80,7 +78,6 @@ public class WhiteboardManager implements IWhiteboardManager { return app.hazelcast.getMap(WBS_KEY); } - @PostConstruct void init() { map().addEntryListener(new WbListener(), true); map().entrySet().forEach(e -> onlineWbs.put(e.getKey(), e.getValue()));