_register_router(pattern, router) {
        const reference = this;
        router._subscribe((event, object) => {
            switch (event) {
                case 'records':
                    // Destructure records from router
                    const { routes, middlewares } = object;

                    // Register routes from router locally with adjusted pattern
                    routes.forEach((record) =>
                        reference._register_route(
                            record.method,
                            merge_relative_paths(pattern, record.pattern),
                            record.options,
                            record.handler
                        )
                    );

                    // Register middlewares from router locally with adjusted pattern
                    return middlewares.forEach((record) =>
                        reference._register_middleware(merge_relative_paths(pattern, record.pattern), record.middleware)
                    );
                case 'route':
                    // Register route from router locally with adjusted pattern
                    return reference._register_route(
                        object.method,
                        merge_relative_paths(pattern, object.pattern),
                        object.options,
                        object.handler
                    );
                case 'middleware':
                    // Register middleware from router locally with adjusted pattern
                    return reference._register_middleware(
                        merge_relative_paths(pattern, object.patch),
                        object.middleware
                    );
            }
        });
    }
Registers a router from use() method and recalibrates.

@private
@param {String} pattern
@param {this} router