code: private MonetaryAmountFactory<?> createFactory(MonetaryAmountFactoryProviderSpi<? extends MonetaryAmount> prov, MonetaryAmountFactoryQuery factoryQuery) {
          MonetaryAmountFactory<?> factory = prov.createMonetaryAmountFactory();
          if(factoryQuery!=null) {
              MonetaryContextBuilder cb = factory.getDefaultMonetaryContext().toBuilder();
              for (String key : factoryQuery.getKeys(Object.class)) {
                  cb.set(key, factoryQuery.get(key, Object.class));
              }
              factory.setContext(cb.build());
          }
          return factory;
      }
docs: Creates a {@link MonetaryAmountFactory} using the given provider and configures the
  {@link MonetaryContext} based on the given {@link MonetaryAmountFactoryQuery}.
  
  This code should actually be done in "createMonetaryAmountFactory", see issue #65.
  @param prov the factory provider, not null
  @param factoryQuery the original query
  @return the configured amount factory, never null.