internal bool SetField(String field, PdfObject value) {
Dictionary<String, Object> map = fields;
StringTokenizer tk = new StringTokenizer(field, ".");
if (!tk.HasMoreTokens())
return false;
while (true) {
String s = tk.NextToken();
Object obj;
map.TryGetValue(s, out obj);
if (tk.HasMoreTokens()) {
if (obj == null) {
obj = new Dictionary<String, Object>();
map[s] = obj;
map = (Dictionary<string,object>)obj;
continue;
}
else if (obj is Dictionary<String, Object>)
map = (Dictionary<String, Object>)obj;
else
return false;
}
else {
if (!(obj is Dictionary<String, Object>)) {
map[s] = value;
return true;
}
else
return false;
}
}
}