Angular2 rc1, nuevo enrutador y datos de paso

Solía tener, con un enrutador obsoleto, algunos componentes que enrutaban al mismo componente:

Algún componente

import {Component, Injector} from 'angular2/core';
import {IDataServiceSome} from './IDataServiceSome';
import {RouteData} from 'angular2/router';

@Component({
    selector: 'Some',
    templateUrl: './Some.html'
})
export class Some {
    Model;
    DataService: IDataServiceVendor;

    constructor(routeData: RouteData, injector: Injector) {
        var dataServiceToken = routeData.get('DataServiceToken');
        this.DataService = injector.get(dataServiceToken);
        this.Model = DataService.getSomeModel();
    }
}

IDataServiceSome

export interface IDataServiceSome {
    getSomeModel(): Object;
}

p.ej. Comp1 pero hay Comp2, Comp3, etc.

import {Component} from 'angular2/core';
import {RouteConfigs, Router, ROUTER_DIRECTIVES} from 'angular2/router';

import {DataServiceSome1} from './IDataServiceSome1';

@RouteConfigs([
    { path: '/Some', name: 'Some', component: Some, data: { DataServiceToken: DataServiceSome1 } }])
@Component({
    directives: [ROUTER_DIRECTIVES],
    providers: [DataServiceSome1],
    selector: 'Comp1',
    template:
    `<div>
        <router-outlet></router-outlet>
        <h1>Comp1 routed to Some</h1>
    </div>`
})
export class Comp1{

}

Como habrás adivinado, hay muchos servicios de datos que implementanIDataServiceSome y muchos componentes que se dirigen aSome. La elección de qué servicio de datos se utiliza proviene de cualquier componente que se dirija aSome componente utilizando un token de datos conocido porinjector. Con la versión rc1 y el nuevo enrutador, elRouteData es obsoleto o eliminado, pero ¿cómo se implementa este escenario en el futuro?

Respuestas a la pregunta(2)

Su respuesta a la pregunta