001
014
015 package com.liferay.portlet;
016
017 import com.liferay.portal.kernel.portlet.Route;
018 import com.liferay.portal.kernel.portlet.Router;
019
020 import java.util.ArrayList;
021 import java.util.List;
022 import java.util.Map;
023
024
028 public class RouterImpl implements Router {
029
030 public RouterImpl() {
031 _routes = new ArrayList<>();
032 }
033
034 public RouterImpl(int size) {
035 _routes = new ArrayList<>(size);
036 }
037
038 @Override
039 public Route addRoute(String pattern) {
040 Route route = new RouteImpl(pattern);
041
042 _routes.add(route);
043
044 return route;
045 }
046
047 @Override
048 public String parametersToUrl(Map<String, String> parameters) {
049 for (Route route : _routes) {
050 String url = route.parametersToUrl(parameters);
051
052 if (url != null) {
053 return url;
054 }
055 }
056
057 return null;
058 }
059
060 @Override
061 public boolean urlToParameters(String url, Map<String, String> parameters) {
062 for (Route route : _routes) {
063 if (route.urlToParameters(url, parameters)) {
064 return true;
065 }
066 }
067
068 return false;
069 }
070
071 private final List<Route> _routes;
072
073 }