ninja-core/src/main/java/ninja/Result.java
public Result render(Entry<String, Object> entry) {
        
        if (this.renderable == null) {
        
            Map<String, Object> map = Maps.newHashMap();
            this.renderable = map;
            map.put(entry.getKey(), entry.getValue());
        } else {
            
            assertObjectNoRenderableOrThrowException(this.renderable);
            
            Map<String, Object> map;
            if (this.renderable instanceof Map) {
                
                map = (Map) this.renderable;
                if (map.containsKey(entry.getKey())) {
                    throw new IllegalArgumentException(
                           String.format(
                                 "Entry with key %s already stored inside this Result object. "
                                 + "This is currently not supported and does not make sense. "
                                 +  "Consider using your own map.",
                                         entry.getKey()));
                } else { 
                    map.put(entry.getKey(), entry.getValue());
                
                }
                
            } else {                
                map = Maps.newHashMap();
                map.put(
                        SwissKnife.getRealClassNameLowerCamelCase(this.renderable), 
                        this.renderable);
                
                this.renderable = map;
                              
            }
            
            map.put(entry.getKey(), entry.getValue());
            
        }
        
        
        return this;
        
        
    }
public Result render(Entry<String, Object> entry) {
        
        if (this.renderable == null) {
        
            Map<String, Object> map = Maps.newHashMap();
            this.renderable = map;
            map.put(entry.getKey(), entry.getValue());
        } else {
            
            assertObjectNoRenderableOrThrowException(this.renderable);
            
            Map<String, Object> map;
            if (this.renderable instanceof Map) {
                
                map = (Map) this.renderable;
                if (map.containsKey(entry.getKey())) {
                    throw new IllegalArgumentException(
                           String.format(
                                 "Entry with key %s already stored inside this Result object. "
                                 + "This is currently not supported and does not make sense. "
                                 +  "Consider using your own map.",
                                         entry.getKey()));
                } else { 
                    map.put(entry.getKey(), entry.getValue());
                
                }
                
            } else {                
                map = Maps.newHashMap();
                map.put(
                        SwissKnife.getRealClassNameLowerCamelCase(this.renderable), 
                        this.renderable);
                
                this.renderable = map;
                              
            }
            
            map.put(entry.getKey(), entry.getValue());
            
        }
        
        
        return this;
        
        
    }
Handles following cases:
1) If this.renderable is null: a new HashMap is generated and this entry being added
to the map.
2) If this.renderable is a Map: the entry is added
3) If this.renderable is an object (not a renderable): a Map is generated and both
the former object and the new entry are being added.
4) If this.renderable is a Renderable: an {@link IllegalArgumentException} is thrown.

If the entry key already exists in the map of this.renderable an {@link IllegalArgumentException}
is thrown.

@param entry The entry to add.
@return The result for further chaining.