Skip to content

Instantly share code, notes, and snippets.

View pichillilorenzo's full-sized avatar
🎯
Focusing

Lorenzo Pichilli pichillilorenzo

🎯
Focusing
View GitHub Profile
class Book {
@JsonProperty() @JsonClassType({type: () => [String]})
name: string;
@JsonProperty() @JsonClassType({type: () => [String]})
category: string;
}
class Writer {
@JsonProperty() @JsonClassType({type: () => [Number]})
@pichillilorenzo
pichillilorenzo / JsonAliasExample.ts
Created May 3, 2020 18:43
@JsonAlias() example
import { JsonProperty, JsonClassType, JsonAlias, ObjectMapper } from 'jackson-js';
class Book {
@JsonProperty() @JsonClassType({type: () => [String]})
name: string;
@JsonProperty() @JsonClassType({type: () => [String]})
@JsonAlias({values: ['bkcat', 'mybkcat']})
category: string;
}
import { JsonProperty, JsonClassType, ObjectMapper, JsonAnyGetter } from 'jackson-js';
class ScreenInfo {
@JsonProperty() @JsonClassType({type: () => [String]})
id: string;
@JsonProperty() @JsonClassType({type: () => [String]})
title: string;
@JsonProperty() @JsonClassType({type: () => [Number]})
width: number;
@JsonProperty() @JsonClassType({type: () => [Number]})
@pichillilorenzo
pichillilorenzo / JsonAnySetterExample.ts
Created May 3, 2020 19:08
@JsonAnySetter() example
import { JsonProperty, JsonClassType, ObjectMapper, JsonAnySetter } from 'jackson-js';
class ScreenInfo {
@JsonProperty() @JsonClassType({type: () => [String]})
id: string;
@JsonProperty() @JsonClassType({type: () => [String]})
title: string;
@JsonProperty() @JsonClassType({type: () => [Number]})
width: number;
@JsonProperty() @JsonClassType({type: () => [Number]})
@pichillilorenzo
pichillilorenzo / JsonAppendExample.ts
Created May 3, 2020 19:12
@JsonAppend() example
import { JsonProperty, JsonClassType, ObjectMapper, JsonAppend } from 'jackson-js';
@JsonAppend({attrs: [{
value: 'version',
}]})
class User {
@JsonProperty() @JsonClassType({type: () => [Number]})
id: number;
@JsonProperty() @JsonClassType({type: () => [String]})
email: string;
@pichillilorenzo
pichillilorenzo / JsonManagedReferenceAndJsonBackReferenceExample.ts
Last active May 3, 2020 20:56
@JsonManagedReference() and @JsonBackReference() example
import { JsonProperty, JsonClassType, ObjectMapper, JsonManagedReference, JsonBackReference } from 'jackson-js';
class User {
@JsonProperty() @JsonClassType({type: () => [Number]})
id: number;
@JsonProperty() @JsonClassType({type: () => [String]})
email: string;
@JsonProperty() @JsonClassType({type: () => [String]})
firstname: string;
@JsonProperty() @JsonClassType({type: () => [String]})
@pichillilorenzo
pichillilorenzo / JsonClassTypeExample.ts
Created May 3, 2020 19:53
@JsonClassType() example
import { JsonClassType } from 'jackson-js';
class Foo2 { }
class Foo {
@JsonClassType({type: () => [Number]})
barNumber: number;
@JsonClassType({type: () => [String]})
barString: string;
@pichillilorenzo
pichillilorenzo / JsonCreatorExample.ts
Created May 3, 2020 20:00
@JsonCreator() example
import { JsonClassType, JsonProperty, JsonCreator, ObjectMapper } from 'jackson-js';
class Employee {
@JsonProperty() @JsonClassType({type: () => [Number]})
id: number;
@JsonProperty() @JsonClassType({type: () => [String]})
name: string;
@JsonProperty() @JsonClassType({type: () => [String]})
department: string;
import { JsonClassType, JsonProperty, ObjectMapper, JsonSerialize, JsonDeserialize } from 'jackson-js';
class DateSerializer {
static serializeDate(date, context): any {
return {
year: date.getFullYear(),
month: date.getMonth() + 1,
day: date.getDate(),
formatted: date.toLocaleDateString()
};
import { JsonClassType, JsonProperty, ObjectMapper, JsonFilter, JsonFilterType } from 'jackson-js';
@JsonFilter({value: 'studentFilter'})
class Student {
@JsonProperty({value: 'stdName'}) @JsonClassType({type: () => [String]})
name: string;
@JsonProperty() @JsonClassType({type: () => [Number]})
age: number;
@JsonProperty() @JsonClassType({type: () => [String]})
college: string;