public static Set getParameters()

in jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/util/JsfUtils.java [209:253]


    public static Set<RequestParameter> getParameters(ExternalContext externalContext,
                                                      boolean filterViewState,
                                                      boolean addRequestParameter,
                                                      boolean addPageParameter)
    {
        Set<RequestParameter> result = new HashSet<RequestParameter>();

        if(externalContext == null || //detection of early config for different mojarra versions
                externalContext.getRequestParameterValuesMap() == null || externalContext.getRequest() == null)
        {
            return result;
        }

        if(addRequestParameter)
        {
            String key;
            for(Map.Entry<String, String[]> entry : externalContext.getRequestParameterValuesMap().entrySet())
            {
                key = entry.getKey();
                if(filterViewState && "javax.faces.ViewState".equals(key))
                {
                    continue;
                }

                result.add(new RequestParameter(key, entry.getValue()));
            }
        }

        if(addPageParameter)
        {
            PageParameterContext pageParameterContext =
                    CodiUtils.getContextualReferenceByClass(PageParameterContext.class, true);

            if(pageParameterContext != null)
            {
                for(Map.Entry<String, String> entry : pageParameterContext.getPageParameters().entrySet())
                {
                    //TODO add multi-value support - see comment in PageParameterContext
                    result.add(new RequestParameter(entry.getKey(), new String[] {entry.getValue()}));
                }
            }
        }

        return result;
    }