Example usage for org.joda.time LocalDate toDateMidnight

List of usage examples for org.joda.time LocalDate toDateMidnight

Introduction

In this page you can find the example usage for org.joda.time LocalDate toDateMidnight.

Prototype

@Deprecated
public DateMidnight toDateMidnight() 

Source Link

Document

Converts this LocalDate to a DateMidnight in the default time zone.

Usage

From source file:energy.usef.mdc.model.CommonReferenceQueryState.java

License:Apache License

public void setPeriod(LocalDate period) {
    this.period = period == null ? null : period.toDateMidnight().toDate();
}

From source file:energy.usef.mdc.repository.AggregatorConnectionRepository.java

License:Apache License

/**
 * Finds the list of active {@link AggregatorConnection} for the given aggregator at a given time.
 *
 * @param aggregatorDomain {@link String} aggregator domain.
 * @param date {@link org.joda.time.LocalDate} validity date (will be evaluated as current date if <code>null</code>
 *            )./*ww  w . ja v a2 s. co  m*/
 * @return a {@link java.util.List} of {@link AggregatorConnection} entities.
 */
public List<AggregatorConnection> findActiveAggregatorConnectionsForAggregator(String aggregatorDomain,
        LocalDate date) {
    StringBuilder sql = new StringBuilder();
    sql.append("SELECT ac FROM AggregatorConnection ac ");
    sql.append("WHERE ac.aggregator.domain = :aggregatorDomain ");
    sql.append("  AND ac.validFrom <= :date ");
    sql.append("  AND (ac.validUntil is null OR ac.validUntil > :date) ");
    return getEntityManager().createQuery(sql.toString(), AggregatorConnection.class)
            .setParameter("aggregatorDomain", aggregatorDomain)
            .setParameter("date", date == null ? DateTimeUtil.getCurrentDate().toDateMidnight().toDate()
                    : date.toDateMidnight().toDate(), TemporalType.DATE)
            .getResultList();
}

From source file:energy.usef.mdc.repository.AggregatorConnectionRepository.java

License:Apache License

/**
 * Finds the active {@link AggregatorConnection} for the given connection at a given time.
 *
 * @param connectionEntityAddress {@link java.lang.String} entity address of the connection.
 * @param date {@link org.joda.time.LocalDate} validity date (will be evaluated as current date if <code>null</code>
 *            ).//from  www.j  a  v  a  2s .com
 * @return a unique {@link AggregatorConnection} or <code>null</code> if not in the database.
 */
public AggregatorConnection findActiveAggregatorConnectionForConnection(String connectionEntityAddress,
        LocalDate date) {
    StringBuilder sql = new StringBuilder();
    sql.append("SELECT ac FROM AggregatorConnection ac ");
    sql.append("WHERE ac.connection.entityAddress = :connectionEntityAddress ");
    sql.append("  AND ac.validFrom <= :date ");
    sql.append("  AND (ac.validUntil is null OR ac.validUntil > :date) ");
    List<AggregatorConnection> resultList = getEntityManager()
            .createQuery(sql.toString(), AggregatorConnection.class)
            .setParameter("connectionEntityAddress", connectionEntityAddress)
            .setParameter("date", date == null ? DateTimeUtil.getCurrentDate().toDateMidnight().toDate()
                    : date.toDateMidnight().toDate(), TemporalType.DATE)
            .getResultList();
    if (resultList == null || resultList.isEmpty()) {
        return null;
    }
    return resultList.get(0);
}

From source file:energy.usef.mdc.repository.AggregatorConnectionRepository.java

License:Apache License

/**
 * Finds the list of {@link AggregatorConnection} for the give Common Reference Operator domain.
 *
 * @param croDomain {@link java.lang.String} domain name of the Common Reference Operator.
 * @param date {@link org.joda.time.LocalDate} validity date (will be evaluated as current date if <code>null</code>
 *            )./* ww  w  .j  ava 2  s. c  om*/
 * @return a {@link java.util.List} of {@link AggregatorConnection}.
 */
public List<AggregatorConnection> findActiveAggregatorConnectionsForCommonReferenceOperator(String croDomain,
        LocalDate date) {
    StringBuilder sql = new StringBuilder();
    sql.append("SELECT ac FROM AggregatorConnection ac ");
    sql.append("WHERE ac.commonReferenceOperator.domain = :croDomain ");
    sql.append("  AND ac.validFrom <= :date ");
    sql.append("  AND (ac.validUntil is null OR ac.validUntil > :date) ");
    return getEntityManager().createQuery(sql.toString(), AggregatorConnection.class)
            .setParameter("croDomain", croDomain)
            .setParameter("date", date == null ? DateTimeUtil.getCurrentDate().toDateMidnight().toDate()
                    : date.toDateMidnight().toDate(), TemporalType.DATE)
            .getResultList();
}

From source file:energy.usef.mdc.repository.AggregatorConnectionRepository.java

License:Apache License

/**
 * Find the list of aggregator entity addresses and domains valid on a given date for a list of connections.
 *
 * @param date/*from   ww  w .java 2 s . c  o  m*/
 * @param connectionEntityAddressList
 * @return
 */
@SuppressWarnings("unchecked")
public Map<String, String> findAggregatorForEachConnection(LocalDate date,
        List<String> connectionEntityAddressList) {
    StringBuilder sql = new StringBuilder();
    sql.append("SELECT ac.connection.entityAddress, ac.aggregator.domain ");
    sql.append(" FROM AggregatorConnection ac ");
    sql.append("WHERE ac.connection.entityAddress IN (:connectionEntityAddressList) ");
    sql.append("  AND ac.validFrom <= :date ");
    sql.append("  AND (ac.validUntil is null OR ac.validUntil > :date) ");
    Query query = getEntityManager().createQuery(sql.toString());
    query.setParameter("date", date.toDateMidnight().toDate());
    query.setParameter("connectionEntityAddressList", connectionEntityAddressList);
    return ((List<Object[]>) query.getResultList()).stream()
            .collect(Collectors.toMap(record -> (String) record[0], record -> (String) record[1]));
}

From source file:energy.usef.mdc.repository.AggregatorConnectionRepository.java

License:Apache License

/**
 * Delete all {@link AggregatorConnection}s for a given period.
 *
 * @param period//from   w ww .jav  a 2 s.co  m
 * @return the number of {@link AggregatorConnection}s deleted.
 */
public int cleanup(LocalDate period) {
    StringBuilder sql = new StringBuilder();
    sql.append("DELETE FROM AggregatorConnection ac WHERE ac.validUntil = :validUntil");

    return entityManager.createQuery(sql.toString())
            .setParameter("validUntil", period.toDateMidnight().toDate()).executeUpdate();
}

From source file:energy.usef.mdc.repository.CommonReferenceQueryStateRepository.java

License:Apache License

/**
 * Delete all {@link CommonReferenceQueryState}s for a certain date.
 *
 * @param period//from   w  w  w  . j  av  a  2s  . co  m
 * @return the number of {@link CommonReferenceQueryState}s deleted.
 */
public int cleanup(LocalDate period) {
    StringBuilder sql = new StringBuilder();
    sql.append("DELETE FROM CommonReferenceQueryState crqs WHERE crqs.period = :period");

    return entityManager.createQuery(sql.toString()).setParameter("period", period.toDateMidnight().toDate())
            .executeUpdate();
}

From source file:energy.usef.mdc.workflow.altstep.MdcMeterDataQueryStubFail.java

License:Apache License

private List<ConnectionMeterEventDto> generateConnectionMeterEventDto(String entityAddress, LocalDate day) {
    List<ConnectionMeterEventDto> result = new ArrayList<>();

    ConnectionMeterEventDto connectionMeterEventDto1 = new ConnectionMeterEventDto();
    connectionMeterEventDto1.setEntityAddress(entityAddress);
    LocalDateTime eventDateTime1 = new LocalDateTime(day.toDateMidnight().toDate())
            .plusMinutes(RANDOM.nextInt(MINUTES_PER_HOUR));
    connectionMeterEventDto1.setEventDateTime(eventDateTime1);
    result.add(connectionMeterEventDto1);

    ConnectionMeterEventDto connectionMeterEventDto2 = new ConnectionMeterEventDto();
    connectionMeterEventDto2.setEntityAddress(entityAddress);
    LocalDateTime eventDateTime2 = new LocalDateTime(day.toDateMidnight().toDate())
            .plusMinutes(MINUTES_PER_HOUR + 1 + RANDOM.nextInt(MINUTES_PER_HOUR));
    connectionMeterEventDto2.setEventDateTime(eventDateTime2);

    int randomInt = 1;
    if (randomInt == 0) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        BigInteger eventData = BigInteger.valueOf(generateRandomNumber(-500, 500));
        connectionMeterEventDto1.setEventData(eventData);

        connectionMeterEventDto2.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        result.add(connectionMeterEventDto2);
    } else if (randomInt == 1) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_INTERRUPTION);

        connectionMeterEventDto2.setEventType(MeterEventTypeDto.CONNECTION_RESUMPTION);
        result.add(connectionMeterEventDto2);
    } else if (randomInt == 2) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        if (RANDOM.nextBoolean()) {
            BigInteger eventData = BigInteger.valueOf(generateRandomNumber(-500, 500));
            connectionMeterEventDto1.setEventData(eventData);
        }//from ww  w.ja  va2  s . c  o m
    } else if (randomInt == 3) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_INTERRUPTION);
    } else {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_RESUMPTION);
    }

    return result;
}

From source file:energy.usef.mdc.workflow.altstep.MdcMeterDataQueryStubFixedActual.java

License:Apache License

private List<ConnectionMeterEventDto> generateConnectionMeterEventDto(String entityAddress, LocalDate day) {
    List<ConnectionMeterEventDto> result = new ArrayList<>();

    ConnectionMeterEventDto connectionMeterEventDto1 = new ConnectionMeterEventDto();
    connectionMeterEventDto1.setEntityAddress(entityAddress);
    LocalDateTime eventDateTime1 = new LocalDateTime(day.toDateMidnight().toDate())
            .plusMinutes(RANDOM.nextInt(MINUTES_PER_HOUR));
    connectionMeterEventDto1.setEventDateTime(eventDateTime1);
    result.add(connectionMeterEventDto1);

    ConnectionMeterEventDto connectionMeterEventDto2 = new ConnectionMeterEventDto();
    connectionMeterEventDto2.setEntityAddress(entityAddress);
    LocalDateTime eventDateTime2 = new LocalDateTime(day.toDateMidnight().toDate())
            .plusMinutes(MINUTES_PER_HOUR + 1 + RANDOM.nextInt(MINUTES_PER_HOUR));
    connectionMeterEventDto2.setEventDateTime(eventDateTime2);

    int randomInt = RANDOM.nextInt(FLIP_THE_COIN_SIDES);
    if (randomInt == 0) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        BigInteger eventData = BigInteger.valueOf(generateRandomNumber(-500, 500));
        connectionMeterEventDto1.setEventData(eventData);

        connectionMeterEventDto2.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        result.add(connectionMeterEventDto2);
    } else if (randomInt == 1) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_INTERRUPTION);

        connectionMeterEventDto2.setEventType(MeterEventTypeDto.CONNECTION_RESUMPTION);
        result.add(connectionMeterEventDto2);
    } else if (randomInt == 2) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        if (RANDOM.nextBoolean()) {
            BigInteger eventData = BigInteger.valueOf(generateRandomNumber(-500, 500));
            connectionMeterEventDto1.setEventData(eventData);
        }/*ww w  .jav a 2s  .com*/
    } else if (randomInt == 3) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_INTERRUPTION);
    } else {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_RESUMPTION);
    }

    return result;
}

From source file:energy.usef.mdc.workflow.altstep.MdcMeterDataQueryStubSuccess.java

License:Apache License

private List<ConnectionMeterEventDto> generateConnectionMeterEventDto(String entityAddress, LocalDate day) {
    List<ConnectionMeterEventDto> result = new ArrayList<>();

    ConnectionMeterEventDto connectionMeterEventDto1 = new ConnectionMeterEventDto();
    connectionMeterEventDto1.setEntityAddress(entityAddress);
    LocalDateTime eventDateTime1 = new LocalDateTime(day.toDateMidnight().toDate())
            .plusMinutes(RANDOM.nextInt(MINUTES_PER_HOUR));
    connectionMeterEventDto1.setEventDateTime(eventDateTime1);
    result.add(connectionMeterEventDto1);

    ConnectionMeterEventDto connectionMeterEventDto2 = new ConnectionMeterEventDto();
    connectionMeterEventDto2.setEntityAddress(entityAddress);
    LocalDateTime eventDateTime2 = new LocalDateTime(day.toDateMidnight().toDate())
            .plusMinutes(MINUTES_PER_HOUR + 1 + RANDOM.nextInt(MINUTES_PER_HOUR));
    connectionMeterEventDto2.setEventDateTime(eventDateTime2);

    int randomInt = 0;
    if (randomInt == 0) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        BigInteger eventData = BigInteger.valueOf(generateRandomNumber(-500, 500));
        connectionMeterEventDto1.setEventData(eventData);

        connectionMeterEventDto2.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        result.add(connectionMeterEventDto2);
    } else if (randomInt == 1) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_INTERRUPTION);

        connectionMeterEventDto2.setEventType(MeterEventTypeDto.CONNECTION_RESUMPTION);
        result.add(connectionMeterEventDto2);
    } else if (randomInt == 2) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CAPACITY_MANAGEMENT);
        if (RANDOM.nextBoolean()) {
            BigInteger eventData = BigInteger.valueOf(generateRandomNumber(-500, 500));
            connectionMeterEventDto1.setEventData(eventData);
        }//from ww  w . j  a  v a 2 s. co  m
    } else if (randomInt == 3) {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_INTERRUPTION);
    } else {
        connectionMeterEventDto1.setEventType(MeterEventTypeDto.CONNECTION_RESUMPTION);
    }

    return result;
}