Skip to content

Commit c4ef008

Browse files
denisdenis
denis
authored and
denis
committed
start
1 parent f7adac2 commit c4ef008

File tree

9 files changed

+452
-2
lines changed

9 files changed

+452
-2
lines changed

.gitignore

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
.settings
2+
.classpath
3+
.project
4+
target
5+
pom.xml.releaseBackup
6+
release.properties

README.md

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
scribe-jackson
1+
scribe-mapping
22
==============
33

4-
Add-on for Scribe project : pojo/bean to map JSON datas with Jackson
4+
Add-on for Scribe project : pojo/bean to map JSON datas with your favorite JSON processor Java library, like Jackson.
5+
6+
Scribe-java : https://github.com/fernandezpablo85/scribe-java
7+
Jackson : https://github.com/FasterXML/jackson

pom.xml

+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<modelVersion>4.0.0</modelVersion>
3+
4+
<groupId>org.hoteia.tools</groupId>
5+
<artifactId>scribe-mapping</artifactId>
6+
<version>0.1-SNAPSHOT</version>
7+
<packaging>jar</packaging>
8+
<name>scribe-mapping</name>
9+
<description>Scribe Mapping Project, extends Scribe-Java Project from GitHub</description>
10+
<url>http://www.hoteia.com</url>
11+
<inceptionYear>2012-2013</inceptionYear>
12+
<organization>
13+
<name>Hoteia</name>
14+
<url>http://www.hoteia.com</url>
15+
</organization>
16+
17+
<scm>
18+
<connection>scm:git:[email protected]:hoteia/scribe-mapping.git</connection>
19+
<developerConnection>scm:git:[email protected]:hoteia/scribe-mapping.git</developerConnection>
20+
<url>scm:git:[email protected]:hoteia/scribe-mapping.git</url>
21+
<tag>HEAD</tag>
22+
</scm>
23+
24+
<properties>
25+
<jackson-version>1.8.0</jackson-version>
26+
</properties>
27+
28+
<dependencies>
29+
<!-- JSON -->
30+
<dependency>
31+
<groupId>org.codehaus.jackson</groupId>
32+
<artifactId>jackson-jaxrs</artifactId>
33+
<version>${jackson-version}</version>
34+
<type>jar</type>
35+
<scope>compile</scope>
36+
</dependency>
37+
<dependency>
38+
<groupId>org.codehaus.jackson</groupId>
39+
<artifactId>jackson-mapper-asl</artifactId>
40+
<version>${jackson-version}</version>
41+
</dependency>
42+
</dependencies>
43+
44+
<distributionManagement>
45+
<repository>
46+
<id>releases</id>
47+
<name>Hoteia Releases</name>
48+
<url>http://nexus.hoteia.com/content/repositories/releases</url>
49+
</repository>
50+
<snapshotRepository>
51+
<id>snapshots</id>
52+
<name>Hoteia Snapshots</name>
53+
<url>http://nexus.hoteia.com/content/repositories/snapshots</url>
54+
<uniqueVersion>false</uniqueVersion>
55+
</snapshotRepository>
56+
</distributionManagement>
57+
58+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
/**
2+
* Most of the code in the Qalingo project is copyrighted Hoteia and licensed
3+
* under the Apache License Version 2.0 (release version 0.7.0)
4+
* http://www.apache.org/licenses/LICENSE-2.0
5+
*
6+
* Copyright (c) Hoteia, 2012-2013
7+
* http://www.hoteia.com - http://twitter.com/hoteia - [email protected]
8+
*
9+
*/
10+
package fr.hoteia.tools.scribe.mapping.oauth.json.bean;
11+
12+
import org.codehaus.jackson.annotate.JsonAnySetter;
13+
14+
/**
15+
*
16+
* <p>
17+
* <a href="AbstractJsonPojo.java.html"><i>View Source</i></a>
18+
* </p>
19+
*
20+
* @author Denis Gosset <a href="http://www.hoteia.com"><i>Hoteia.com</i></a>
21+
*
22+
*/
23+
public abstract class AbstractJsonPojo {
24+
25+
public AbstractJsonPojo() {
26+
}
27+
28+
@JsonAnySetter
29+
public void handleUnknown(String key, Object value) {
30+
// do something: put to a Map; log a warning, whatever
31+
}
32+
33+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
package fr.hoteia.tools.scribe.mapping.oauth.json.bean.windowslive;
2+
3+
import org.codehaus.jackson.annotate.JsonAnySetter;
4+
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
5+
6+
import fr.hoteia.tools.scribe.mapping.oauth.json.bean.AbstractJsonPojo;
7+
8+
/**
9+
*
10+
* <p>
11+
* <a href="EmailPojo.java.html"><i>View Source</i></a>
12+
* </p>
13+
*
14+
* @author Denis Gosset <a href="http://www.hoteia.com"><i>Hoteia.com</i></a>
15+
*
16+
*/
17+
@JsonIgnoreProperties(ignoreUnknown=true)
18+
public class EmailPojo extends AbstractJsonPojo {
19+
20+
protected String preferred;
21+
22+
protected String account;
23+
24+
protected String personal;
25+
26+
protected String business;
27+
28+
public String getPreferred() {
29+
return preferred;
30+
}
31+
32+
public void setPreferred(String preferred) {
33+
this.preferred = preferred;
34+
}
35+
36+
public String getAccount() {
37+
return account;
38+
}
39+
40+
public void setAccount(String account) {
41+
this.account = account;
42+
}
43+
44+
public String getPersonal() {
45+
return personal;
46+
}
47+
48+
public void setPersonal(String personal) {
49+
this.personal = personal;
50+
}
51+
52+
public String getBusiness() {
53+
return business;
54+
}
55+
56+
public void setBusiness(String business) {
57+
this.business = business;
58+
}
59+
60+
@JsonAnySetter
61+
@Override
62+
public void handleUnknown(String key, Object value) {
63+
super.handleUnknown(key, value);
64+
}
65+
66+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package fr.hoteia.tools.scribe.mapping.oauth.json.bean.windowslive;
2+
3+
import org.codehaus.jackson.annotate.JsonAnySetter;
4+
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
5+
6+
import fr.hoteia.tools.scribe.mapping.oauth.json.bean.AbstractJsonPojo;
7+
8+
/**
9+
*
10+
* <p>
11+
* <a href="EmployerPojo.java.html"><i>View Source</i></a>
12+
* </p>
13+
*
14+
* @author Denis Gosset <a href="http://www.hoteia.com"><i>Hoteia.com</i></a>
15+
*
16+
*/
17+
@JsonIgnoreProperties(ignoreUnknown=true)
18+
public class EmployerPojo extends AbstractJsonPojo {
19+
20+
protected String name;
21+
22+
public String getName() {
23+
return name;
24+
}
25+
26+
public void setName(String name) {
27+
this.name = name;
28+
}
29+
30+
@JsonAnySetter
31+
@Override
32+
public void handleUnknown(String key, Object value) {
33+
super.handleUnknown(key, value);
34+
}
35+
36+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package fr.hoteia.tools.scribe.mapping.oauth.json.bean.windowslive;
2+
3+
import org.codehaus.jackson.annotate.JsonAnySetter;
4+
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
5+
6+
import fr.hoteia.tools.scribe.mapping.oauth.json.bean.AbstractJsonPojo;
7+
8+
/**
9+
*
10+
* <p>
11+
* <a href="PositionPojo.java.html"><i>View Source</i></a>
12+
* </p>
13+
*
14+
* @author Denis Gosset <a href="http://www.hoteia.com"><i>Hoteia.com</i></a>
15+
*
16+
*/
17+
@JsonIgnoreProperties(ignoreUnknown=true)
18+
public class PositionPojo extends AbstractJsonPojo {
19+
20+
protected String name;
21+
22+
public String getName() {
23+
return name;
24+
}
25+
26+
public void setName(String name) {
27+
this.name = name;
28+
}
29+
30+
@JsonAnySetter
31+
@Override
32+
public void handleUnknown(String key, Object value) {
33+
super.handleUnknown(key, value);
34+
}
35+
36+
}

0 commit comments

Comments
 (0)