Skip to content

Commit 3fa0135

Browse files
feat(maps): patch concept serialization (#688)
Signed-off-by: jonathan.casey <[email protected]>
1 parent cd38e6f commit 3fa0135

File tree

3 files changed

+14
-14
lines changed

3 files changed

+14
-14
lines changed

packages/concerto-core/lib/serializer/jsongenerator.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ class JSONGenerator {
106106
parameters.stack.push(value);
107107
const jsonValue = decl.accept(this, parameters);
108108

109-
value = JSON.stringify(jsonValue);
109+
value = jsonValue;
110110
}
111111

112112
map.set(key, value);

packages/concerto-core/lib/serializer/jsonpopulator.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ class JSONPopulator {
220220
let subResource = parameters.factory.newConcept(decl.getNamespace(),
221221
decl.getName(), decl.getIdentifierFieldName() );
222222

223-
parameters.jsonStack.push(JSON.parse(value));
223+
parameters.jsonStack.push(value);
224224
parameters.resourceStack.push(subResource);
225225
return decl.accept(this, parameters);
226226
}

packages/concerto-core/test/serializer/maptype/serializer.js

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -383,8 +383,8 @@ describe('Serializer', () => {
383383
$class: 'org.acme.sample.Concepts',
384384
rolodex: {
385385
$class: 'org.acme.sample.Rolodex',
386-
'Dublin': '{"$class":"org.acme.sample.Person","name":"Bob"}',
387-
'London': '{"$class":"org.acme.sample.Person","name":"Alice"}'
386+
'Dublin': {'$class':'org.acme.sample.Person','name':'Bob'},
387+
'London': {'$class':'org.acme.sample.Person','name':'Alice'}
388388
}
389389
});
390390

@@ -514,8 +514,8 @@ describe('Serializer', () => {
514514
$class: 'org.acme.sample.Concepts',
515515
directory: {
516516
$class: 'org.acme.sample.Directory',
517-
'D4F45017-AD2B-416B-AD9F-3B74F7DEA291': '{"$class":"org.acme.sample.Person","name":"Bob"}',
518-
'9FAE34BF-18C3-4770-A6AA-6F7656C356B8': '{"$class":"org.acme.sample.Person","name":"Alice"}',
517+
'D4F45017-AD2B-416B-AD9F-3B74F7DEA291': {'$class':'org.acme.sample.Person','name':'Bob'},
518+
'9FAE34BF-18C3-4770-A6AA-6F7656C356B8': {'$class':'org.acme.sample.Person','name':'Alice'},
519519
}
520520
});
521521

@@ -805,8 +805,8 @@ describe('Serializer', () => {
805805
$class: 'org.acme.sample.Concepts',
806806
rolodex: {
807807
$class: 'org.acme.sample.Rolodex',
808-
'Dublin': '{"$class":"org.acme.sample.Person","name":"Bob"}',
809-
'London': '{"$class":"org.acme.sample.Person","name":"Alice"}'
808+
'Dublin': {'$class':'org.acme.sample.Person','name':'Bob'},
809+
'London': {'$class':'org.acme.sample.Person','name':'Alice'}
810810
}
811811
};
812812

@@ -830,8 +830,8 @@ describe('Serializer', () => {
830830
$class: 'org.acme.sample.Concepts',
831831
rolodex: {
832832
$class: 'org.acme.sample.Rolodex',
833-
'Dublin': '{"$class":"org.acme.sample.Person","name":"Bob"}',
834-
'London': '{"$class":"org.acme.sample.Person","name":"Alice"}'
833+
'Dublin': {'$class':'org.acme.sample.Person','name':'Bob'},
834+
'London': {'$class':'org.acme.sample.Person','name':'Alice'}
835835
}
836836
});
837837
});
@@ -941,8 +941,8 @@ describe('Serializer', () => {
941941
$class: 'org.acme.sample.Concepts',
942942
directory: {
943943
$class: 'org.acme.sample.Directory',
944-
'D4F45017-AD2B-416B-AD9F-3B74F7DEA291': '{"$class":"org.acme.sample.Person","name":"Bob"}',
945-
'9FAE34BF-18C3-4770-A6AA-6F7656C356B8': '{"$class":"org.acme.sample.Person","name":"Alice"}',
944+
'D4F45017-AD2B-416B-AD9F-3B74F7DEA291': {'$class':'org.acme.sample.Person','name':'Bob'},
945+
'9FAE34BF-18C3-4770-A6AA-6F7656C356B8': {'$class':'org.acme.sample.Person','name':'Alice'},
946946
}
947947
};
948948

@@ -964,8 +964,8 @@ describe('Serializer', () => {
964964
$class: 'org.acme.sample.Concepts',
965965
directory: {
966966
$class: 'org.acme.sample.Directory',
967-
'D4F45017-AD2B-416B-AD9F-3B74F7DEA291': '{"$class":"org.acme.sample.Person","name":"Bob"}',
968-
'9FAE34BF-18C3-4770-A6AA-6F7656C356B8': '{"$class":"org.acme.sample.Person","name":"Alice"}',
967+
'D4F45017-AD2B-416B-AD9F-3B74F7DEA291': {'$class':'org.acme.sample.Person','name':'Bob'},
968+
'9FAE34BF-18C3-4770-A6AA-6F7656C356B8': {'$class':'org.acme.sample.Person','name':'Alice'},
969969
}
970970
});
971971
});

0 commit comments

Comments
 (0)