Subversion Repositories bacoAlunos

Rev

Rev 1861 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1861 Rev 1925
Line 1... Line 1...
1
package pt.estgp.estgweb.utils.documentBuilder;
1
package pt.estgp.estgweb.utils.documentBuilder;
2
 
2
 
-
 
3
import com.owlike.genson.Genson;
-
 
4
import com.owlike.genson.GensonBuilder;
-
 
5
import org.json.JSONException;
-
 
6
import org.json.JSONObject;
-
 
7
import pt.estgp.estgweb.services.courses.coursereport.documentmodel.CourseReportDocument;
3
import pt.estgp.estgweb.utils.ClassUtils;
8
import pt.estgp.estgweb.utils.ClassUtils;
4
 
9
 
-
 
10
import java.util.Date;
5
import java.util.List;
11
import java.util.List;
6
 
12
 
7
/**
13
/**
8
 * Created by jorgemachado on 07/11/17.
14
 * Created by jorgemachado on 07/11/17.
9
 */
15
 */
10
public class ExtensibleDocObject
16
public class ExtensibleDocObject
11
{
17
{
-
 
18
 
-
 
19
 
-
 
20
 
-
 
21
    private static Genson gensonGenericLoad;
-
 
22
    static{
-
 
23
        gensonGenericLoad = new GensonBuilder()
-
 
24
                .useMethods(true)
-
 
25
                .useFields(true)
-
 
26
                .useRuntimeType(true) //para ignorar a CGLIB do courseUnitEvaluation
-
 
27
                .useClassMetadata(true)
-
 
28
                .useDateAsTimestamp(true)
-
 
29
                .exclude(1.5.0/docs/api/java/lang/Class.html">Class.class)
-
 
30
                .exclude(5+0%2Fdocs%2Fapi+Date">Date.class)
-
 
31
                .exclude(java.sql.5+0%2Fdocs%2Fapi+Timestamp">Timestamp.class)
-
 
32
                .exclude(java.sql.5+0%2Fdocs%2Fapi+Date">Date.class)
-
 
33
                .create();
-
 
34
    }
-
 
35
 
-
 
36
    public static CourseReportDocument fromJson(1.5.0/docs/api/java/lang/String.html">String json)
-
 
37
    {
-
 
38
        return gensonGenericLoad.deserialize(json,CourseReportDocument.class);
-
 
39
    }
-
 
40
 
-
 
41
 
-
 
42
 
-
 
43
    /**
-
 
44
     * Generic Json Object only for local class methods
-
 
45
     * @return
-
 
46
     * @throws JSONException
-
 
47
     */
-
 
48
    public JSONObject toJsonObject() throws JSONException
-
 
49
    {
-
 
50
        return new JSONObject(toJson());
-
 
51
    }
-
 
52
 
-
 
53
    /**
-
 
54
     * * Generic Json Object only for local class methods
-
 
55
     * @return
-
 
56
     * @throws java.io.IOException
-
 
57
     */
-
 
58
    public 1.5.0/docs/api/java/lang/String.html">String toJson()
-
 
59
    {
-
 
60
        return gensonGenericLoad.serialize(this);
-
 
61
    }
-
 
62
 
-
 
63
 
12
    public List<String> getAllSuperClasses()
64
    public List<String> getAllSuperClasses()
13
    {
65
    {
14
        return ClassUtils.getAllSuperClasses(this.getClass());
66
        return ClassUtils.getAllSuperClasses(this.getClass());
15
    }
67
    }
16
    public void setAllSuperClasses(List<String> superclasses)
68
    public void setAllSuperClasses(List<String> superclasses)
17
    {
69
    {
18
 
70
 
19
    }
71
    }
-
 
72
 
-
 
73
 
20
}
74
}