I think it makes more sense that the Map was a sortedMap, thus the entrySet will be a sortedSet and I suppose your problem will be solved.
If you are agree I can change it. On Thu, Jun 19, 2008 at 12:35 AM, ed_ruder <[EMAIL PROTECTED]> wrote: > > James, > > I'm not very familiar with Abdera, but I have browsed the source a bit > after > hitting the same limitation that Jim reported, while working on Shindig. I > *think* that a simple change in RouteManager could alleviate some (and for > me, I think, all) of the limitation. > > When resolving a route, Rails walks through its routes in the order that > they are defined. RouteManager walks through the targets.entrySet, which is > unordered. If RouteManager kept a targets List<> instead of a targets > Map<>, > it could walk through the routes in order. (There would need to be a new > class defined, to hold both the Route and TargetType, but it would be very > simple.) > > To work around the limitation Jim describes, a client would define a > /base/:collection/:entry route before the /base/:collection route. > > WDYT? > > Ed > > > James M Snell wrote: > > > > Ruby matching can span segments if a default value for the missing > > variables is provided. We, however, don't have default values for our > > variables. It would make sense for us to tighten up the matching rules. > > > > - James > > > > Jim Ancona wrote: > >> I have run into some problems with my Routes matching unexpectedly. > >> Before filing a bug, I thought I'd ask for feedback on whether the > >> current behavior is correct. > >> > >> The current algorithm attempts to match the non-variable parts of the > >> pattern, setting the variable to whatever is in between. > >> > >> So the pattern "/base/:collection/" matches both "/base/test/" and > >> "/base/test/123/". In the second case, the value of the collection > >> variable is "test/123". In my opinion, not allowing matches to span URI > >> segments would be less prone to unintuitive results. > >> > >> FWIW, a quick glance at some docs on Ruby Routes seems to indicate that > >> they do not span URI path segments. > >> > >> Thoughts? > >> > >> Jim > >> > > > > > > -- > View this message in context: > http://www.nabble.com/Route-matching-too-liberal--tp15348853p17993519.html > Sent from the abdera-dev mailing list archive at Nabble.com. > > -- David Calavera http://www.thinkincode.net
