private void parseClusteredCacheAttribute( XMLExtendedStreamReader reader, int index, Attribute attribute, String value, ModelNode cache, Configuration.CacheMode cacheMode) throws XMLStreamException { switch (attribute) { case MODE: { try { Mode mode = Mode.valueOf(value); cache.get(ModelKeys.MODE).set(mode.apply(cacheMode).name()); } catch (IllegalArgumentException e) { throw ParseUtils.invalidAttributeValue(reader, index); } break; } case QUEUE_SIZE: { cache.get(ModelKeys.QUEUE_SIZE).set(Integer.parseInt(value)); break; } case QUEUE_FLUSH_INTERVAL: { cache.get(ModelKeys.QUEUE_FLUSH_INTERVAL).set(Long.parseLong(value)); break; } case REMOTE_TIMEOUT: { cache.get(ModelKeys.REMOTE_TIMEOUT).set(Long.parseLong(value)); break; } default: { this.parseCacheAttribute(reader, index, attribute, value, cache); } } }