dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts@v1.0.2/dtos/autoevent.go (about)

     1  //
     2  // Copyright (C) 2020-2023 IOTech Ltd
     3  //
     4  // SPDX-License-Identifier: Apache-2.0
     5  
     6  package dtos
     7  
     8  import (
     9  	"dev.azure.com/aidainnovazione0090/DeviceManager/_git/go-mod-core-contracts/models"
    10  )
    11  
    12  type AutoEvent struct {
    13  	Interval   string `json:"interval" yaml:"interval" validate:"required,edgex-dto-duration"`
    14  	OnChange   bool   `json:"onChange" yaml:"onChange"`
    15  	SourceName string `json:"sourceName" yaml:"sourceName" validate:"required"`
    16  }
    17  
    18  // ToAutoEventModel transforms the AutoEvent DTO to the AutoEvent model
    19  func ToAutoEventModel(a AutoEvent) models.AutoEvent {
    20  	return models.AutoEvent{
    21  		Interval:   a.Interval,
    22  		OnChange:   a.OnChange,
    23  		SourceName: a.SourceName,
    24  	}
    25  }
    26  
    27  // ToAutoEventModels transforms the AutoEvent DTO array to the AutoEvent model array
    28  func ToAutoEventModels(autoEventDTOs []AutoEvent) []models.AutoEvent {
    29  	autoEventModels := make([]models.AutoEvent, len(autoEventDTOs))
    30  	for i, a := range autoEventDTOs {
    31  		autoEventModels[i] = ToAutoEventModel(a)
    32  	}
    33  	return autoEventModels
    34  }
    35  
    36  // FromAutoEventModelToDTO transforms the AutoEvent model to the AutoEvent DTO
    37  func FromAutoEventModelToDTO(a models.AutoEvent) AutoEvent {
    38  	return AutoEvent{
    39  		Interval:   a.Interval,
    40  		OnChange:   a.OnChange,
    41  		SourceName: a.SourceName,
    42  	}
    43  }
    44  
    45  // FromAutoEventModelsToDTOs transforms the AutoEvent model array to the AutoEvent DTO array
    46  func FromAutoEventModelsToDTOs(autoEvents []models.AutoEvent) []AutoEvent {
    47  	dtos := make([]AutoEvent, len(autoEvents))
    48  	for i, a := range autoEvents {
    49  		dtos[i] = FromAutoEventModelToDTO(a)
    50  	}
    51  	return dtos
    52  }