api/src/main/java/org/ocpsoft/rewrite/param/RegexParameterizedPatternBuilder.java
private Map<String, Object> extractBoundValues(final Rewrite event, final EvaluationContext context,
            Transposition<String> transposition)
   {
      Map<String, Object> result = new LinkedHashMap<String, Object>();

      for (RegexGroup group : groups)
      {
         Parameter<?> parameter = store.get(group.getName());
         Object value = null;

         // TODO TEST ME!!!
         if (context.getState().isEvaluating())
            value = ((ParameterValueStore) context.get(ParameterValueStore.class)).retrieve(parameter);

         if (value == null || context.getState().isPerforming())
         {
            Object retrieved = ParameterUtils.performRetrieval(event, context, parameter);
            if (retrieved != null)
               value = retrieved;
         }

         if (value == null)
            throw new ParameterizationException("The value of required parameter [" + group.getName() + "] was null.");

         if (transposition != null)
            value = transposition.transpose(event, context, value.toString());

         result.put(group.getName(), value);
      }
      return result;
   }
private Map<String, Object> extractBoundValues(final Rewrite event, final EvaluationContext context,
            Transposition<String> transposition)
   {
      Map<String, Object> result = new LinkedHashMap<String, Object>();

      for (RegexGroup group : groups)
      {
         Parameter<?> parameter = store.get(group.getName());
         Object value = null;

         // TODO TEST ME!!!
         if (context.getState().isEvaluating())
            value = ((ParameterValueStore) context.get(ParameterValueStore.class)).retrieve(parameter);

         if (value == null || context.getState().isPerforming())
         {
            Object retrieved = ParameterUtils.performRetrieval(event, context, parameter);
            if (retrieved != null)
               value = retrieved;
         }

         if (value == null)
            throw new ParameterizationException("The value of required parameter [" + group.getName() + "] was null.");

         if (transposition != null)
            value = transposition.transpose(event, context, value.toString());

         result.put(group.getName(), value);
      }
      return result;
   }
Extract bound values from configured {@link Binding} instances. Return a {@link Map} of the extracted key-value
pairs. Before storing the values in the map, this method applies the supplied {@link Transposition} instance.