Browse Source

Merge pull request #74 from frankstratton/master

Allow access to the ClientModel
inconshreveable 11 years ago
parent
commit
c0c91fe3d6
1 changed files with 18 additions and 2 deletions
  1. 18 2
      src/ngrok/client/controller.go

+ 18 - 2
src/ngrok/client/controller.go

@@ -130,13 +130,29 @@ func (ctl *Controller) GetWebInspectAddr() string {
 	return ctl.config.InspectAddr
 }
 
+func (ctl *Controller) SetupModel(config *Configuration) *ClientModel {
+	model := newClientModel(config, ctl)
+	ctl.model = model
+	return model
+}
+
+func (ctl *Controller) GetModel() *ClientModel {
+	return ctl.model.(*ClientModel)
+}
+
 func (ctl *Controller) Run(config *Configuration) {
 	// Save the configuration
 	ctl.config = config
 
+	var model *ClientModel
+
+	if ctl.model == nil {
+		model = ctl.SetupModel(config)
+	} else {
+		model = ctl.model.(*ClientModel)
+	}
+
 	// init the model
-	model := newClientModel(config, ctl)
-	ctl.model = model
 	var state mvc.State = model
 
 	// init web ui