private CatalogOverridePhaseDefinitionModelDao getOrCreatePhaseDefinitionFromTransactionWithoutUsageOverrides(String parentPhaseName,final DateTime catalogEffectiveDate, final PlanPhasePriceOverride override, final Handle inTransactionHandle, final InternalCallContext context) { final CatalogOverridePhaseDefinitionSqlDao sqlDao = inTransactionHandle.attach(CatalogOverridePhaseDefinitionSqlDao.class); List<CatalogOverridePhaseDefinitionModelDao> resultPhases = sqlDao.getByAttributes(parentPhaseName, override.getCurrency().name(), override.getFixedPrice(), override.getRecurringPrice(), context); for(CatalogOverridePhaseDefinitionModelDao resultPhase : resultPhases) { if (resultPhase != null && getOverriddenPhaseUsages(resultPhase.getRecordId(), context).size() == 0) { return resultPhase; } } final CatalogOverridePhaseDefinitionModelDao phaseDef = new CatalogOverridePhaseDefinitionModelDao(parentPhaseName, override.getCurrency().name(), override.getFixedPrice(), override.getRecurringPrice(), catalogEffectiveDate); sqlDao.create(phaseDef, context); final Long recordId = sqlDao.getLastInsertId(); return sqlDao.getByRecordId(recordId, context); }
@Override public List<CatalogOverridePhaseDefinitionModelDao> inTransaction(final Handle handle, final TransactionStatus status) throws Exception { final CatalogOverridePhaseDefinitionSqlDao sqlDao = handle.attach(CatalogOverridePhaseDefinitionSqlDao.class); return sqlDao.getOverriddenPlanPhases(planDefRecordId, context); } });
@Override public Void doTransaction(final CatalogOverridePhaseDefinitionSqlDao sqlDao) { sqlDao.create(obj1, internalCallContext); final Long lastInserted = sqlDao.getLastInsertId(); final CatalogOverridePhaseDefinitionModelDao rehydrated = sqlDao.getByRecordId(lastInserted, internalCallContext); assertEquals(rehydrated.getParentPhaseName(), obj1.getParentPhaseName()); assertNull(rehydrated.getFixedPrice()); assertEquals(rehydrated.getRecurringPrice().compareTo(obj1.getRecurringPrice()), 0); assertEquals(rehydrated.getCurrency(), obj1.getCurrency()); return null; } });
@Override public Void doTransaction(final CatalogOverridePhaseDefinitionSqlDao sqlDao) { sqlDao.create(objWithNoNullPrices, internalCallContext); checkRehydrated(objWithNoNullPrices, sqlDao); sqlDao.create(objWithNullFixedPrice, internalCallContext); checkRehydrated(objWithNullFixedPrice, sqlDao); sqlDao.create(objWithNullRecurringPrice, internalCallContext); checkRehydrated(objWithNullRecurringPrice, sqlDao); return null; }
private void checkRehydrated(final CatalogOverridePhaseDefinitionModelDao obj, final CatalogOverridePhaseDefinitionSqlDao sqlDao) { final CatalogOverridePhaseDefinitionModelDao rehydrated = sqlDao.getByAttributes(obj.getParentPhaseName(), obj.getCurrency(), obj.getFixedPrice(), obj.getRecurringPrice(), internalCallContext).get(0); assertEquals(rehydrated.getParentPhaseName(), obj.getParentPhaseName()); if (obj.getFixedPrice() != null) { assertEquals(rehydrated.getFixedPrice().compareTo(obj.getFixedPrice()), 0); } else { assertNull(rehydrated.getFixedPrice()); } if (obj.getRecurringPrice() != null) { assertEquals(rehydrated.getRecurringPrice().compareTo(obj.getRecurringPrice()), 0); } else { assertNull(rehydrated.getRecurringPrice()); } assertEquals(rehydrated.getCurrency(), obj.getCurrency()); } });
@Override public Void doTransaction(final CatalogOverridePhaseDefinitionSqlDao sqlDao) { sqlDao.create(obj1, internalCallContext); final Long lastInserted = sqlDao.getLastInsertId(); final CatalogOverridePhaseDefinitionModelDao rehydrated = sqlDao.getByRecordId(lastInserted, internalCallContext); assertEquals(rehydrated.getParentPhaseName(), obj1.getParentPhaseName()); assertEquals(rehydrated.getFixedPrice().compareTo(obj1.getFixedPrice()), 0); assertEquals(rehydrated.getRecurringPrice().compareTo(obj1.getRecurringPrice()), 0); assertEquals(rehydrated.getCurrency(), obj1.getCurrency()); return null; } });
@Override public Void doTransaction(final CatalogOverridePhaseDefinitionSqlDao sqlDao) { sqlDao.create(objWithNoNullPrices, internalCallContext); checkRehydrated(objWithNoNullPrices, sqlDao); sqlDao.create(objWithNullFixedPrice, internalCallContext); checkRehydrated(objWithNullFixedPrice, sqlDao); sqlDao.create(objWithNullRecurringPrice, internalCallContext); checkRehydrated(objWithNullRecurringPrice, sqlDao); return null; }
private void checkRehydrated(final CatalogOverridePhaseDefinitionModelDao obj, final CatalogOverridePhaseDefinitionSqlDao sqlDao) { final CatalogOverridePhaseDefinitionModelDao rehydrated = sqlDao.getByAttributes(obj.getParentPhaseName(), obj.getCurrency(), obj.getFixedPrice(), obj.getRecurringPrice(), internalCallContext).get(0); assertEquals(rehydrated.getParentPhaseName(), obj.getParentPhaseName()); if (obj.getFixedPrice() != null) { assertEquals(rehydrated.getFixedPrice().compareTo(obj.getFixedPrice()), 0); } else { assertNull(rehydrated.getFixedPrice()); } if (obj.getRecurringPrice() != null) { assertEquals(rehydrated.getRecurringPrice().compareTo(obj.getRecurringPrice()), 0); } else { assertNull(rehydrated.getRecurringPrice()); } assertEquals(rehydrated.getCurrency(), obj.getCurrency()); } });
List<CatalogOverridePhaseDefinitionModelDao> results = sqlDao.getByAttributes(parentPhaseName, override.getCurrency().name(), override.getFixedPrice(), override.getRecurringPrice(), context); sqlDao.create(inputPhaseDef, context); final Long recordId = sqlDao.getLastInsertId(); final CatalogOverridePhaseDefinitionModelDao resultPhaseDef = sqlDao.getByRecordId(recordId, context);
@Override public Void doTransaction(final CatalogOverridePhaseDefinitionSqlDao sqlDao) { sqlDao.create(obj1, internalCallContext); final Long lastInserted = sqlDao.getLastInsertId(); final CatalogOverridePhaseDefinitionModelDao rehydrated = sqlDao.getByRecordId(lastInserted, internalCallContext); assertEquals(rehydrated.getParentPhaseName(), obj1.getParentPhaseName()); assertNull(rehydrated.getFixedPrice()); assertEquals(rehydrated.getRecurringPrice().compareTo(obj1.getRecurringPrice()), 0); assertEquals(rehydrated.getCurrency(), obj1.getCurrency()); return null; } });
@Override public List<CatalogOverridePhaseDefinitionModelDao> inTransaction(final Handle handle, final TransactionStatus status) throws Exception { final CatalogOverridePhaseDefinitionSqlDao sqlDao = handle.attach(CatalogOverridePhaseDefinitionSqlDao.class); return sqlDao.getOverriddenPlanPhases(planDefRecordId, context); } });
private CatalogOverridePhaseDefinitionModelDao getOrCreatePhaseDefinitionFromTransactionWithoutUsageOverrides(String parentPhaseName,final DateTime catalogEffectiveDate, final PlanPhasePriceOverride override, final Handle inTransactionHandle, final InternalCallContext context) { final CatalogOverridePhaseDefinitionSqlDao sqlDao = inTransactionHandle.attach(CatalogOverridePhaseDefinitionSqlDao.class); List<CatalogOverridePhaseDefinitionModelDao> resultPhases = sqlDao.getByAttributes(parentPhaseName, override.getCurrency().name(), override.getFixedPrice(), override.getRecurringPrice(), context); for(CatalogOverridePhaseDefinitionModelDao resultPhase : resultPhases) { if (resultPhase != null && getOverriddenPhaseUsages(resultPhase.getRecordId(), context).size() == 0) { return resultPhase; } } final CatalogOverridePhaseDefinitionModelDao phaseDef = new CatalogOverridePhaseDefinitionModelDao(parentPhaseName, override.getCurrency().name(), override.getFixedPrice(), override.getRecurringPrice(), catalogEffectiveDate); sqlDao.create(phaseDef, context); final Long recordId = sqlDao.getLastInsertId(); return sqlDao.getByRecordId(recordId, context); }
@Override public Void doTransaction(final CatalogOverridePhaseDefinitionSqlDao sqlDao) { sqlDao.create(obj1, internalCallContext); final Long lastInserted = sqlDao.getLastInsertId(); final CatalogOverridePhaseDefinitionModelDao rehydrated = sqlDao.getByRecordId(lastInserted, internalCallContext); assertEquals(rehydrated.getParentPhaseName(), obj1.getParentPhaseName()); assertEquals(rehydrated.getFixedPrice().compareTo(obj1.getFixedPrice()), 0); assertEquals(rehydrated.getRecurringPrice().compareTo(obj1.getRecurringPrice()), 0); assertEquals(rehydrated.getCurrency(), obj1.getCurrency()); return null; } });
List<CatalogOverridePhaseDefinitionModelDao> results = sqlDao.getByAttributes(parentPhaseName, override.getCurrency().name(), override.getFixedPrice(), override.getRecurringPrice(), context); sqlDao.create(inputPhaseDef, context); final Long recordId = sqlDao.getLastInsertId(); final CatalogOverridePhaseDefinitionModelDao resultPhaseDef = sqlDao.getByRecordId(recordId, context);