You've been checkstyled!

Change-Id: I0425764b2f3b07bc224a387ab7d544c6b360c691
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java b/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java
index 1e1374a..b9b5e8c 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java
@@ -16,6 +16,7 @@
 
 package org.onosproject.ui.impl.topo.model;
 
+import org.onosproject.ui.impl.topo.UiTopoSession;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -28,20 +29,43 @@
     private static final Logger log =
             LoggerFactory.getLogger(UiSharedTopologyModel.class);
 
-    private static UiSharedTopologyModel singleton = null;
 
     private UiSharedTopologyModel() {
         // TODO: set up core model listeners and build the state of the model
     }
 
-    public void register(UiTopoLayout layout) {
-        log.info("Registering topology layout {}", layout);
-        // TODO: register the view
+    // TODO: Note to Thomas (or others)..
+    // Don't we have a common pattern for adding/removing listeners and
+    //  invoking them when things happen?
+
+
+    /**
+     * Registers a UI topology session with the topology model.
+     *
+     * @param session the session to register
+     */
+    public void register(UiTopoSession session) {
+        log.info("Registering topology session {}", session);
+        // TODO: register the session
     }
 
-    public void unregister(UiTopoLayout layout) {
-        log.info("Unregistering topology layout {}", layout);
-        // TODO: unregister the view
+    /**
+     * Unregisters a UI topology session from the topology model.
+     *
+     * @param session the session to unregister
+     */
+    public void unregister(UiTopoSession session) {
+        log.info("Unregistering topology session {}", session);
+        // TODO: unregister the session
+    }
+
+    /**
+     * Bill Pugh Singleton pattern. INSTANCE won't be instantiated until the
+     * LazyHolder class is loaded via a call to the instance() method below.
+     */
+    private static class LazyHolder {
+        private static final UiSharedTopologyModel INSTANCE =
+                new UiSharedTopologyModel();
     }
 
     /**
@@ -49,11 +73,7 @@
      *
      * @return the singleton topology model
      */
-    public static synchronized UiSharedTopologyModel instance() {
-        if (singleton == null) {
-            log.info("Instantiating Singleton.");
-            singleton = new UiSharedTopologyModel();
-        }
-        return singleton;
+    public static UiSharedTopologyModel instance() {
+        return LazyHolder.INSTANCE;
     }
 }
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiTopoLayout.java b/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiTopoLayout.java
deleted file mode 100644
index b71b81e..0000000
--- a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiTopoLayout.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- *  Copyright 2016 Open Networking Laboratory
- *
- *  Licensed 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.onosproject.ui.impl.topo.model;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Base class for modeling the Topology View layout.
- * <p>
- * Note that an instance of this class will be created for each
- * {@link org.onosproject.ui.impl.UiWebSocket} connection, and will contain
- * the state of how the topology is laid out for the logged-in user.
- */
-public class UiTopoLayout {
-    private final Logger log = LoggerFactory.getLogger(getClass());
-
-    private final String username;
-    private final UiSharedTopologyModel sharedModel;
-
-    private boolean registered = false;
-
-    /**
-     * Creates a new topology layout.
-     */
-    public UiTopoLayout(String username) {
-        this.username = username;
-        this.sharedModel = UiSharedTopologyModel.instance();
-    }
-
-    /**
-     * Initializes the layout; registering with the shared model.
-     */
-    public void init() {
-        if (!registered) {
-            sharedModel.register(this);
-            registered = true;
-        } else {
-            log.warn("already registered");
-        }
-    }
-
-    /**
-     * Destroys the layout; unregistering from the shared model.
-     */
-    public void destroy() {
-        if (!registered) {
-            sharedModel.unregister(this);
-        } else {
-            log.warn("already unregistered");
-        }
-    }
-
-    @Override
-    public String toString() {
-        return String.format("{UiTopoLayout for user <%s>}", username);
-    }
-}