Search in sources :

Example 1 with Type

use of de.metas.purchasecandidate.availability.AvailabilityResult.Type in project metasfresh-webui-api by metasfresh.

the class PurchaseRowId method fromJson.

private static final PurchaseRowId fromJson(@NonNull final String json, @Nullable final DocumentId documentId) {
    final List<String> parts = PARTS_SPLITTER.splitToList(json);
    final int partsCount = parts.size();
    if (partsCount < 1 || partsCount == 4 || partsCount > 5) {
        throw new AdempiereException("Invalid format: " + json);
    }
    try {
        final int salesOrderLineId = Integer.parseInt(parts.get(0));
        final int vendorBPartnerId = partsCount >= 2 ? Integer.parseInt(parts.get(1)) : -1;
        final int processedPurchaseCandidateId = partsCount >= 3 ? Integer.parseInt(parts.get(2)) : -1;
        final Type availabilityType = partsCount >= 4 ? Type.valueOf(parts.get(3)) : null;
        final String availabilityDistinguisher = partsCount >= 5 ? parts.get(4) : null;
        return PurchaseRowId.builder().salesOrderLineId(salesOrderLineId).vendorBPartnerId(vendorBPartnerId).processedPurchaseCandidateId(processedPurchaseCandidateId).availabilityType(availabilityType).availabilityDistinguisher(availabilityDistinguisher).build();
    } catch (final Exception ex) {
        throw new AdempiereException("Cannot convert '" + json + "' to " + PurchaseRowId.class, ex);
    }
}
Also used : Type(de.metas.purchasecandidate.availability.AvailabilityResult.Type) AdempiereException(org.adempiere.exceptions.AdempiereException) ToString(lombok.ToString) AdempiereException(org.adempiere.exceptions.AdempiereException)

Aggregations

Type (de.metas.purchasecandidate.availability.AvailabilityResult.Type)1 ToString (lombok.ToString)1 AdempiereException (org.adempiere.exceptions.AdempiereException)1