//and this payment failed
counter.pay("cc", false);
//As you see we had a total of 4 payments, one credit card payment, 2 ec payments and one paypal. Let's test it:
//this code is just to test the results, you don't need to repeat it in your code, the counters will show up in the webui.
IProducerRegistryAPI registry = new ProducerRegistryAPIFactory().createProducerRegistryAPI();
//check successes
OnDemandStatsProducer<CounterStats> successProducer = (OnDemandStatsProducer<CounterStats>)registry.getProducer("PaymentCounterByParameter.success");
assertNotNull(successProducer);
assertEquals(4, successProducer.getDefaultStats().get());
assertEquals(2, successProducer.getStats("ec").get());
assertEquals(1, successProducer.getStats("cc").get());
assertEquals(1, successProducer.getStats("paypal").get());
//check failures
OnDemandStatsProducer<CounterStats> failureProducer = (OnDemandStatsProducer<CounterStats>)registry.getProducer("PaymentCounterByParameter.failure");
assertNotNull(failureProducer);
assertEquals(1, failureProducer.getDefaultStats().get());
assertEquals(0, failureProducer.getStats("ec").get());
assertEquals(1, failureProducer.getStats("cc").get());
assertEquals(0, failureProducer.getStats("paypal").get());