remulasce / metroapp

Realtime arrival notification utility for LA Metro
2 stars 0 forks source link

Handle split lametro / lametro-rail stops #237

Closed remulasce closed 9 years ago

remulasce commented 9 years ago

metro bus and rail use separate agencies.

We currently swap in the correct agency right before heading to the network. But the scraper-generated files are separated, too.

So we need to handle split mapping files now too.

remulasce commented 9 years ago

So the quick way to do this would be to just join the rail / bus tables.

Then use the existing everything, everywhere.

The problem is that then we have to have this specific agency code in the app forever. And, we have to specially handle remaking the combined table.

remulasce commented 9 years ago

The other option is to actually handle having multiple tables.

The proper way to do this would be to extend Nighelles's regionalization component to specifically return which tables to use, then pull suggestions from all of them and merge them.

Each entry should then know what agency it comes from, so we can get rid of #192 and do all the regionalization up front in the input.

remulasce commented 9 years ago

In terms of implementation, the rest of the milestone doesn't depend on this. We can use only bus or only rail to test the rest of the app (the speedup part), then include the agency in the input stops, and then finally input the multi-agency support. Even if we don't get to this part, we would have enough to manually do an LA merge.

nighelles commented 9 years ago

I already made the combined table this afternoon for testing.

On Sun, May 3, 2015 at 11:40 PM, remulasce notifications@github.com wrote:

So the quick way to do this would be to just join the rail / bus tables.

Then use the existing everything, everywhere.

The problem is that then we have to have this specific agency code in the app forever. And, we have to specially handle remaking the combined table.

— Reply to this email directly or view it on GitHub https://github.com/remulasce/metroapp/issues/237#issuecomment-98598759.

remulasce commented 9 years ago

Ok, that's good. I implemented the speed savings, which are pretty cool. Now onto the rest of the fixing...

remulasce commented 9 years ago

This is indev.

Progress:

Remaining:

Notes: Tested out switched versions of the databases and was mildly impressed at how well the whole 'set it up at input stage' thing worked. It was like 2 LOC to switch between lametro and actransit.

remulasce commented 9 years ago

...And this is handled now!

And, pretty cleanly.

@nighelles

Notes:

-Backward compatibility is maintained. Stops now have Agencies, but if no agency is set, the Predictions will fallback to LaMetroUtil to figure out their agency.

Suggested work: