use of org.opensmartgridplatform.dto.valueobjects.smartmetering.SpecialDaysRequestDto in project open-smart-grid-platform by OSGP.
the class ConfigurationService method setSpecialDays.
public void setSpecialDays(final MessageMetadata messageMetadata, final SpecialDaysRequest specialDaysRequest) throws FunctionalException {
log.info("setSpecialDays for organisationIdentification: {} for deviceIdentification: {}", messageMetadata.getOrganisationIdentification(), messageMetadata.getDeviceIdentification());
final SmartMeter smartMeter = this.domainHelperService.findSmartMeter(messageMetadata.getDeviceIdentification());
final SpecialDaysRequestDto requestDto = this.configurationMapper.map(specialDaysRequest, SpecialDaysRequestDto.class);
this.osgpCoreRequestMessageSender.send(requestDto, messageMetadata.builder().withIpAddress(smartMeter.getIpAddress()).withNetworkSegmentIds(smartMeter.getBtsId(), smartMeter.getCellId()).build());
}
use of org.opensmartgridplatform.dto.valueobjects.smartmetering.SpecialDaysRequestDto in project open-smart-grid-platform by OSGP.
the class SpecialDaysRequestMappingTest method testSpecialDaysRequestMappingNonEmptyListNoCosemDate.
// To check mapping of SpecialDaysRequest, when its SpecialDaysRequestData
// has a filled List (1 value), where CosemDate is not specified.
@Test
public void testSpecialDaysRequestMappingNonEmptyListNoCosemDate() {
final String deviceIdentification = "nr1";
final int dayId = 1;
final SpecialDay specialDay = new SpecialDay(new CosemDate(), dayId);
final SpecialDaysRequestData specialDaysRequestData = new SpecialDaysRequestDataBuilder().addSpecialDay(specialDay).build();
final SpecialDaysRequest specialDaysRequestValueObject = new SpecialDaysRequest(deviceIdentification, specialDaysRequestData);
final SpecialDaysRequestDto specialDaysRequestDto = this.configurationMapper.map(specialDaysRequestValueObject, SpecialDaysRequestDto.class);
assertThat(specialDaysRequestDto.getDeviceIdentification()).isEqualTo(deviceIdentification);
final SpecialDaysRequestDataDto requestDataDto = specialDaysRequestDto.getSpecialDaysRequestData();
assertThat(requestDataDto).isNotNull();
assertThat(requestDataDto.getSpecialDays()).isNotNull();
assertThat(requestDataDto.getSpecialDays().size()).isEqualTo(dayId);
final SpecialDayDto specialDayDto = requestDataDto.getSpecialDays().get(0);
assertThat(specialDayDto.getDayId()).isEqualTo(dayId);
final CosemDate specialDayDate = specialDay.getSpecialDayDate();
final CosemDateDto specialDayDateDto = specialDayDto.getSpecialDayDate();
assertThat(specialDayDateDto.getYear()).isEqualTo(specialDayDate.getYear());
assertThat(specialDayDateDto.getMonth()).isEqualTo(specialDayDate.getMonth());
assertThat(specialDayDateDto.getDayOfMonth()).isEqualTo(specialDayDate.getDayOfMonth());
}
use of org.opensmartgridplatform.dto.valueobjects.smartmetering.SpecialDaysRequestDto in project open-smart-grid-platform by OSGP.
the class SpecialDaysRequestMappingTest method testSpecialDaysRequestMappingNonEmptyList.
// To check mapping of SpecialDaysRequest, when its SpecialDaysRequestData
// has a filled List (1 value).
@Test
public void testSpecialDaysRequestMappingNonEmptyList() {
final String deviceIdentification = "nr1";
final int year = 2016;
final int month = 3;
final int dayOfMonth = 11;
final int dayId = 1;
final SpecialDay specialDay = new SpecialDay(new CosemDate(year, month, dayOfMonth), dayId);
final SpecialDaysRequestData specialDaysRequestData = new SpecialDaysRequestDataBuilder().addSpecialDay(specialDay).build();
final SpecialDaysRequest specialDaysRequestValueObject = new SpecialDaysRequest(deviceIdentification, specialDaysRequestData);
final SpecialDaysRequestDto specialDaysRequestDto = this.configurationMapper.map(specialDaysRequestValueObject, SpecialDaysRequestDto.class);
assertThat(specialDaysRequestDto.getDeviceIdentification()).isEqualTo(deviceIdentification);
final SpecialDaysRequestDataDto requestDataDto = specialDaysRequestDto.getSpecialDaysRequestData();
assertThat(requestDataDto).isNotNull();
assertThat(requestDataDto.getSpecialDays()).isNotNull();
assertThat(requestDataDto.getSpecialDays().size()).isEqualTo(dayId);
final SpecialDayDto specialDayDto = requestDataDto.getSpecialDays().get(0);
assertThat(specialDayDto.getDayId()).isEqualTo(dayId);
final CosemDateDto specialDayDateDto = specialDayDto.getSpecialDayDate();
assertThat(specialDayDateDto.getYear()).isEqualTo(year);
assertThat(specialDayDateDto.getMonth()).isEqualTo(month);
assertThat(specialDayDateDto.getDayOfMonth()).isEqualTo(dayOfMonth);
}
use of org.opensmartgridplatform.dto.valueobjects.smartmetering.SpecialDaysRequestDto in project open-smart-grid-platform by OSGP.
the class SpecialDaysRequestMessageProcessor method handleMessage.
@Override
protected Serializable handleMessage(final DlmsConnectionManager conn, final DlmsDevice device, final Serializable requestObject, final MessageMetadata messageMetadata) throws OsgpException {
this.assertRequestObjectType(SpecialDaysRequestDto.class, requestObject);
final SpecialDaysRequestDto specialDaysRequest = (SpecialDaysRequestDto) requestObject;
this.configurationService.setSpecialDays(conn, device, specialDaysRequest, messageMetadata);
return null;
}
use of org.opensmartgridplatform.dto.valueobjects.smartmetering.SpecialDaysRequestDto in project open-smart-grid-platform by OSGP.
the class SpecialDaysRequestMappingTest method testSpecialDaysRequestMappingEmptyList.
// To check mapping of SpecialDaysRequest, when its SpecialDaysRequestData
// has an empty List.
@Test
public void testSpecialDaysRequestMappingEmptyList() {
final String deviceIdentification = "nr1";
final SpecialDaysRequestData specialDaysRequestData = new SpecialDaysRequestDataBuilder().build();
final SpecialDaysRequest specialDaysRequestValueObject = new SpecialDaysRequest(deviceIdentification, specialDaysRequestData);
final SpecialDaysRequestDto specialDaysRequestDto = this.configurationMapper.map(specialDaysRequestValueObject, SpecialDaysRequestDto.class);
assertThat(specialDaysRequestDto.getDeviceIdentification()).isEqualTo(deviceIdentification);
assertThat(specialDaysRequestDto.getSpecialDaysRequestData()).isNotNull();
}
Aggregations