public void MergeSetInfo(String info)
{
//ns_name=test:set_name=demo:n_objects=1:set-stop-write-count=0:set-evict-hwm-count=0:set-enable-xdr=use-default:set-delete=false
if (info.Length > 0){
String[] parts = info.Split(':');
if (values == null){
values = new Dictionary<String, NameValuePair>();
}
foreach (String part in parts){
String[] kv = part.Split('=');
String key = kv[0];
String value = kv[1];
NameValuePair storedValue = null;
if (values.TryGetValue(key, out storedValue)){
long newValue = 0;
long oldValue = 0;
if (Int64.TryParse(value, out newValue) &&
Int64.TryParse(storedValue.value.ToString(), out oldValue)) {
storedValue.value = (oldValue + newValue).ToString();
storedValue.value = value;
}
} else {
storedValue = new NameValuePair(this, key, value);
values[key] = storedValue;
}
}
this.name = null;
NameValuePair nameVal;
if (values.TryGetValue("set_name", out nameVal)){
this.name = nameVal.Value.ToString();
} else {
this.name = "";
}
}
}