MCPcopy
hub / github.com/loopbackio/loopback-next / route

Method route

extensions/socketio/src/socketio.server.ts:140–159  ·  view source on GitHub ↗

* Register a socketio controller * @param controllerClass * @param meta

(
    controllerClass: Constructor<object>,
    meta?: SocketIoMetadata | string | RegExp,
  )

Source from the content-addressed store, hash-verified

138 * @param meta
139 */
140 route(
141 controllerClass: Constructor<object>,
142 meta?: SocketIoMetadata | string | RegExp,
143 ) {
144 if (meta instanceof RegExp || typeof meta === 'string') {
145 meta = {namespace: meta} as SocketIoMetadata;
146 }
147 if (meta == null) {
148 meta = getSocketIoMetadata(controllerClass) as SocketIoMetadata;
149 }
150 const nsp = meta?.namespace ? this.io.of(meta.namespace) : this.io;
151 if (meta?.name) {
152 this.app.bind(getNamespaceKeyForName(meta.name)).to(nsp);
153 }
154
155 nsp.on('connection', async socket => {
156 await this.createSocketHandler(controllerClass)(socket);
157 });
158 return nsp;
159 }
160
161 /**
162 * Create socket handler from the controller class

Callers 8

discoverAndRegisterMethod · 0.95
loadMethod · 0.45
constructorMethod · 0.45
constructorMethod · 0.45

Calls 6

createSocketHandlerMethod · 0.95
getSocketIoMetadataFunction · 0.90
getNamespaceKeyForNameFunction · 0.85
toMethod · 0.80
bindMethod · 0.45
onMethod · 0.45

Tested by 1

constructorMethod · 0.36