Esanders has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/329714 )

Change subject: Rebaser: Separate namespace creation from /doc/edit
......................................................................

Rebaser: Separate namespace creation from /doc/edit

Change-Id: Ie3b7d6af467c2c9d2d55491ee2509afcb8f92111
---
M rebaser/server.js
M src/dm/ve.dm.SurfaceSynchronizer.js
2 files changed, 14 insertions(+), 8 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/VisualEditor/VisualEditor 
refs/changes/14/329714/1

diff --git a/rebaser/server.js b/rebaser/server.js
index af4ddd6..9f24955 100644
--- a/rebaser/server.js
+++ b/rebaser/server.js
@@ -4,6 +4,7 @@
        port = 8081,
        express = require( 'express' ),
        app = express(),
+       url = require( 'url' ),
        http = require( 'http' ).Server( app ),
        io = require( 'socket.io' )( http ),
        ve = require( '../dist/ve-rebaser.js' );
@@ -81,13 +82,7 @@
 } );
 
 app.get( '/doc/edit/:docName', function ( req, res ) {
-       var nsp,
-               docName = req.params.docName;
-       if ( !docNamespaces.has( docName ) ) {
-               nsp = io.of( '/' + docName );
-               docNamespaces.set( docName, nsp );
-               nsp.on( 'connection', makeConnectionHandler( docName ) );
-       }
+       var docName = req.params.docName;
        res.render( 'editor', { docName: docName } );
 } );
 
@@ -99,5 +94,16 @@
        res.status( 401 ).send( 'DOM in nodejs is hard' );
 } );
 
+io.on( 'connection', function ( socket ) {
+       var nsp,
+               docName = url.parse( socket.handshake.url, true ).query.docName;
+
+       if ( docName && !docNamespaces.has( docName ) ) {
+               nsp = io.of( '/' + docName );
+               docNamespaces.set( docName, nsp );
+               nsp.on( 'connection', makeConnectionHandler( docName ) );
+       }
+} );
+
 http.listen( port );
 console.log( 'Listening on ' + port + ' (artificial delay ' + artificialDelay 
+ ' ms)' );
diff --git a/src/dm/ve.dm.SurfaceSynchronizer.js 
b/src/dm/ve.dm.SurfaceSynchronizer.js
index c391a5d..b09ec31 100644
--- a/src/dm/ve.dm.SurfaceSynchronizer.js
+++ b/src/dm/ve.dm.SurfaceSynchronizer.js
@@ -36,7 +36,7 @@
        this.applying = false;
 
        // HACK
-       this.socket = io( ( config.server || '' ) + '/' + this.documentId );
+       this.socket = io( ( config.server || '' ) + '/' + this.documentId, { 
query: { docName: this.documentId } } );
        this.socket.on( 'registered', this.onRegistered.bind( this ) );
        this.socket.on( 'newChange', this.onNewChange.bind( this ) );
 

-- 
To view, visit https://gerrit.wikimedia.org/r/329714
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie3b7d6af467c2c9d2d55491ee2509afcb8f92111
Gerrit-PatchSet: 1
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <esand...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to