CacheEntry last = m_counterReset ? null : s_cache.put(id, new CacheEntry(m_collectionTimestamp, current)); LOG.debug("getCounterValue: id={}, last={}, current={}", id, (last==null ? last : last.m_value +"@"+ last.m_timestamp), current); if (last == null) { m_localCache.put(id, Double.NaN); if (m_counterReset) { s_cache.put(id, new CacheEntry(m_collectionTimestamp, current));
CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(1000.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(5.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(2500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(2500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertNull(wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(2500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(8.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(7300.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(8.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(7300.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(8.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(7300.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue());
Assert.assertEquals(Double.valueOf(1000.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(1000.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(5.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(2500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(2500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(5.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(2500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(2500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(10.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(5500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(10.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(5500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(10.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(5500.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue());
Assert.assertEquals(Double.valueOf(initialValue.doubleValue()), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertTrue(wrapper.getAttributeValue(attributeName).isNaN()); attributes.put(attribute.getName(), attribute); wrapper = createWrapper(resource, attributes, new Date(baseDate.getTime() + 300000)); Assert.assertFalse(CollectionResourceWrapper.s_cache.get(attributeId).getValue().isNaN()); Assert.assertEquals(Double.valueOf(300.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(1.0), wrapper.getAttributeValue(attributeName)); // 600 - 300 / 300 = 1.0 attributes.put(attribute.getName(), attribute); wrapper = createWrapper(resource, attributes, new Date(baseDate.getTime() + 600000)); Assert.assertFalse(CollectionResourceWrapper.s_cache.get(attributeId).getValue().isNaN()); Assert.assertEquals(Double.valueOf(600.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(1.0), wrapper.getAttributeValue(attributeName)); // 900 - 600 / 300 = 1.0
Assert.assertEquals(Double.valueOf(initialValue.doubleValue()), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(initialValue.doubleValue()), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(200.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(40000.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(200.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(40000.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue()); Assert.assertEquals(Double.valueOf(200.0), wrapper.getAttributeValue(attributeName)); Assert.assertEquals(Double.valueOf(40000.0), CollectionResourceWrapper.s_cache.get(attributeId).getValue());