Subversion Repositories SmartDukaan

Rev

Rev 8749 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package in.shop2020.storage.mongo.adapters;

import in.shop2020.metamodel.core.FreeformContent;
import in.shop2020.metamodel.core.Media;

import java.lang.reflect.Type;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;

import org.apache.commons.collections.MapUtils;

import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;

public class FFCAdapter implements JsonSerializer<FreeformContent> {
        
    private static long counter = 0;
    
    @Override
    public JsonElement serialize(FreeformContent src, Type typeOfSrc, JsonSerializationContext context) {
        Map<String, Media> medias  = src.getMedias();
        if (MapUtils.isEmpty(medias)){
                Iterator<String> iter = new HashSet<String>(medias.keySet()).iterator();
                while (iter.hasNext()) {
                        String key= iter.next();
                        medias.put(Long.toString(++counter),medias.remove(key));
                }
                System.out.println(src.getMedias());
        }
        return new Gson().toJsonTree(src);
    }

}