com.ocpsoft.pretty.faces.config.PrettyConfigBuilder Maven / Gradle / Ivy
/*
* PrettyFaces is an OpenSource JSF library to create bookmarkable URLs.
*
* Copyright (C) 2009 - Lincoln Baxter, III
*
* This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or (at your option) any
* later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see the file COPYING.LESSER3 or visit the
* GNU website at .
*/
package com.ocpsoft.pretty.faces.config;
import java.util.LinkedList;
import java.util.List;
import com.ocpsoft.pretty.faces.config.mapping.UrlMapping;
import com.ocpsoft.pretty.faces.config.rewrite.RewriteRule;
/**
* Pretty Faces configuration builder. Accepts configuration elements (
* {@link #addMapping(UrlMapping)}) and builds the configuration (
* {@link #build()}).
*
* @author Aleksei Valikov
* @author Lincoln Baxter, III
*/
public class PrettyConfigBuilder
{
private final List mappings = new LinkedList();
private final List rewriteRules = new LinkedList();
public void addMapping(final UrlMapping mapping)
{
if (mapping == null)
{
throw new IllegalArgumentException("Mapping must not be null.");
}
mappings.add(mapping);
}
public void addRewriteRule(final RewriteRule rule)
{
if (rule == null)
{
throw new IllegalArgumentException("RewriteRule must not be null.");
}
rewriteRules.add(rule);
}
public PrettyConfig build()
{
final PrettyConfig config = new PrettyConfig();
config.setMappings(mappings);
config.setGlobalRewriteRules(rewriteRules);
return config;
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy