/** * Set a single value for the specified HTTP parameter. * <p> * If there are already one or more values registered for the given parameter * name, they will be replaced. * * @param sName * Parameter name * @param sValue * Parameter value * @return this */ @Nonnull public MockHttpServletRequest setParameter (@Nonnull final String sName, @Nullable final String sValue) { m_aParameters.remove (sName); m_aParameters.add (sName, sValue); return this; }
@Nullable public String getParameter (@Nonnull final String sName) { ValueEnforcer.notNull (sName, "Name"); return m_aParameters.getFirstParamValue (sName); }
/** * Set an array of values for the specified HTTP parameter. * <p> * If there are already one or more values registered for the given parameter * name, they will be replaced. * * @param sName * Parameter name * @param aValues * Parameter values * @return this */ @Nonnull public MockHttpServletRequest setParameter (@Nonnull final String sName, @Nullable final String [] aValues) { m_aParameters.remove (sName); m_aParameters.addAll (sName, aValues); return this; }
/** * Remove already registered values for the specified HTTP parameter, if any. * * @param sName * Parameter name * @return this */ @Nonnull public MockHttpServletRequest removeParameter (@Nonnull final String sName) { ValueEnforcer.notNull (sName, "Name"); m_aParameters.remove (sName); return this; }
/** * Add a single value for the specified HTTP parameter. * <p> * If there are already one or more values registered for the given parameter * name, the given value will be added to the end of the list. * * @param sName * Parameter name * @param sValue * Parameter value * @return this */ @Nonnull public final MockHttpServletRequest addParameter (@Nonnull final String sName, @Nullable final String sValue) { if (sValue != null) m_aParameters.add (sName, sValue); else m_aParameters.add (sName); return this; }
@Nonnull public Enumeration <String> getParameterNames () { return IteratorHelper.getEnumeration (m_aParameters.getAllParamNames ()); }
/** * Adds all provided parameters <em>without</em> replacing any existing * values. To replace existing values, use {@link #setParameters(List)}. * * @param aParams * Parameter name value map * @return this */ @Nonnull public MockHttpServletRequest addParameters (@Nullable final List <? extends URLParameter> aParams) { m_aParameters.addAll (aParams); return this; }
/** * Removes all existing parameters. * * @return this */ @Nonnull public MockHttpServletRequest removeAllParameters () { m_aParameters.clear (); return this; }
@Nullable @ReturnsMutableCopy public String [] getParameterValues (@Nonnull final String sName) { ValueEnforcer.notNull (sName, "Name"); return m_aParameters.getAllParamValues (sName).toArray (new String [0]); }
@Nonnull public HCYouTubeIFrame setLanguage (@Nonnull final Locale aLocale) { ValueEnforcer.notNull (aLocale, "Locale"); ValueEnforcer.notEmpty (aLocale.getLanguage (), "Locale.getLanguage"); m_aVideoURL.params ().remove ("hl"); m_aVideoURL.add ("hl", aLocale.getLanguage ()); setSrc (m_aVideoURL); return this; } }
@Nonnull @ReturnsMutableCopy public ICommonsOrderedMap <String, String []> getParameterMap () { final ICommonsOrderedMap <String, String []> ret = new CommonsLinkedHashMap <> (); for (final String sParamName : m_aParameters.getAllParamNames ()) ret.put (sParamName, getParameterValues (sParamName)); return ret; }
/** * Add an array of values for the specified HTTP parameter. * <p> * If there are already one or more values registered for the given parameter * name, the given values will be added to the end of the list. * * @param sName * Parameter name * @param aValues * Parameter values * @return this */ @Nonnull public final MockHttpServletRequest addParameter (@Nonnull final String sName, @Nullable final String [] aValues) { m_aParameters.addAll (sName, aValues); return this; }
/** * Sets all provided parameters <em>replacing</em> any existing values for the * provided parameter names. To add without replacing existing values, use * {@link #addParameters(List)}. * * @param aParams * Parameter name value map. May be <code>null</code>. * @return this */ @Nonnull public MockHttpServletRequest setParameters (@Nullable final List <? extends URLParameter> aParams) { if (aParams != null) { for (final URLParameter aParam : aParams) m_aParameters.remove (aParam.getName ()); m_aParameters.addAll (aParams); } return this; }
@Nonnull @ReturnsMutableCopy public PhotonRequestParameters getParametersFromURL (@Nonnull final ISimpleURL aURL, @Nonnull final IMenuTree aMenuTree) { final PhotonRequestParameters ret = new PhotonRequestParameters (); ret.setLocaleFromString (GlobalLocaleManager.getInstance (), aURL.params ().getFirstParamValue (getRequestParamNameLocale ())); ret.setMenuItemFromString (aMenuTree, aURL.params ().getFirstParamValue (getRequestParamNameMenuItem ())); return ret; }