Frederic Souchu created OLINGO-633:
--------------------------------------

             Summary: non 'flags' enum are incorrectly serialized
                 Key: OLINGO-633
                 URL: https://issues.apache.org/jira/browse/OLINGO-633
             Project: Olingo
          Issue Type: Bug
          Components: odata4-server
    Affects Versions: (Java) V4 4.0.0-beta-02
            Reporter: Frederic Souchu


This type:
{code}
return new EnumType()
              .setName("CarType")
              .setFlags(false)
              
.setUnderlyingType(EdmPrimitiveTypeKind.Int32.getFullQualifiedName())
              .setMembers(
                     Arrays.asList(
new EnumMember()
                     .setName("NotProvided")
                     .setValue("0"), 
new EnumMember()
.setName("SuperCar")
.setValue("1"),
new EnumMember()
.setName("MonsterCar")
.setValue("2"),
new EnumMember()
.setName("SpaceCar")
.setValue("3"), 
new EnumMember()
.setName("SlowCar")
.setValue("4")));
{code}

With values set as:
{code}
entitySet.getEntities().add(new Entity()
.addProperty(createPrimitive("Id", 1))
…
.addProperty(new 
PropertyImpl(CarsEdmProvider.ETN_CARTYPE.getFullQualifiedNameAsString(), 
"Type", ValueType.ENUM, rnd.nextInt(5))));
{code}

Will produce the following incorrect output (using the Cars sample):
{code}
{
Id: 1
Model: "F1 W03"
ModelYear: "2012"
Price: 189189.43
Currency: "EUR"
Type: "NotProvided,SlowCar" // it should be a single value… 
}
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to