com.enonic.xp.lib.portal.url.AssetUrlHandler Maven / Gradle / Ivy
package com.enonic.xp.lib.portal.url;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import com.google.common.collect.Multimap;
import com.enonic.xp.portal.url.AssetUrlParams;
public final class AssetUrlHandler
extends AbstractUrlHandler
{
private static final Set VALID_URL_PROPERTY_KEYS =
new HashSet<>( Arrays.asList( "path", "application", "contextPath", "type", "params" ) );
@Override
protected String buildUrl( final Multimap map )
{
final AssetUrlParams params = new AssetUrlParams().portalRequest( this.request ).setAsMap( map );
return this.urlService.assetUrl( params );
}
@Override
protected boolean isValidParam( final String param )
{
return VALID_URL_PROPERTY_KEYS.contains( param );
}
}