int entQuantity = entJson.get("quantity").asInt();
Date startDate = context.parseDate(poolJson.get("startDate").asText());
Date endDate = context.parseDate(poolJson.get("endDate").asText());
Entitlement ent = new Entitlement(entQuantity, startDate, endDate);
ent.setProductId(getValue(poolJson, "productId"));
ent.setDerivedProductId(getValue(poolJson, "derivedProductId"));
ent.setProductName(getValue(poolJson, "productName"));
ent.setDerivedProductName(getValue(poolJson, "derivedProductName"));
ent.setRestrictedToUsername(getValue(poolJson, "restrictedToUsername"));
ent.setContractNumber(getValue(poolJson, "contractNumber"));
ent.setAccountNumber(getValue(poolJson, "accountNumber"));
ent.setOrderNumber(getValue(poolJson, "orderNumber"));
ent.setAttributes(getFlattenedProductAttributes(poolJson));
//ent.setSourceEntitlement(getEntitlement(poolJson.get("sourceEntitlement"), context));
ent.setProvidedProducts(flattenProvidedProducts(poolJson));
ent.setDerivedProvidedProducts(flattenDerivedProvidedProducts(poolJson));
ent.setDerivedProductAttributes(getDerivedProductAttributes(poolJson));
return ent;
}