Skip to content
This repository was archived by the owner on Jun 29, 2024. It is now read-only.

Commit 8648f6d

Browse files
committed
CEM shall not support this in UCLPC
A consumable device not being a CEM may not support `ContractualConsumptionNominalMax `, this is restricted to consumable devices being a CEM. This is defined in UC LPC 1.0 Spec, chapter 2.6.4.1
1 parent 5b85372 commit 8648f6d

File tree

3 files changed

+0
-60
lines changed

3 files changed

+0
-60
lines changed

uclpc/api.go

-7
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,4 @@ type UCLCPInterface interface {
8484
// parameters:
8585
// - entity: the entity of the e.g. EVSE
8686
PowerConsumptionNominalMax(entity spineapi.EntityRemoteInterface) (float64, error)
87-
88-
// return nominal maximum active (real) power the Controllable System is
89-
// allowed to consume due to the customer's contract.
90-
//
91-
// parameters:
92-
// - entity: the entity of the e.g. EVSE
93-
ContractualConsumptionNominalMax(entity spineapi.EntityRemoteInterface) (float64, error)
9487
}

uclpc/public.go

-23
Original file line numberDiff line numberDiff line change
@@ -302,26 +302,3 @@ func (e *UCLPC) PowerConsumptionNominalMax(entity spineapi.EntityRemoteInterface
302302

303303
return data.Value.GetValue(), nil
304304
}
305-
306-
// return nominal maximum active (real) power the Controllable System is
307-
// allowed to consume due to the customer's contract.
308-
func (e *UCLPC) ContractualConsumptionNominalMax(entity spineapi.EntityRemoteInterface) (float64, error) {
309-
if entity == nil || !util.IsCompatibleEntity(entity, e.validEntityTypes) {
310-
return 0, api.ErrNoCompatibleEntity
311-
}
312-
313-
electricalConnection, err := util.ElectricalConnection(e.service, entity)
314-
if err != nil || electricalConnection == nil {
315-
return 0, err
316-
}
317-
318-
data, err := electricalConnection.GetCharacteristicForContextType(
319-
model.ElectricalConnectionCharacteristicContextTypeEntity,
320-
model.ElectricalConnectionCharacteristicTypeTypeContractualConsumptionNominalMax,
321-
)
322-
if err != nil || data.Value == nil {
323-
return 0, err
324-
}
325-
326-
return data.Value.GetValue(), nil
327-
}

uclpc/public_test.go

-30
Original file line numberDiff line numberDiff line change
@@ -353,33 +353,3 @@ func (s *UCLPCSuite) Test_PowerConsumptionNominalMax() {
353353
assert.Nil(s.T(), err)
354354
assert.Equal(s.T(), 8000.0, data)
355355
}
356-
357-
func (s *UCLPCSuite) Test_ContractualConsumptionNominalMax() {
358-
data, err := s.sut.ContractualConsumptionNominalMax(s.mockRemoteEntity)
359-
assert.NotNil(s.T(), err)
360-
assert.Equal(s.T(), 0.0, data)
361-
362-
data, err = s.sut.ContractualConsumptionNominalMax(s.monitoredEntity)
363-
assert.NotNil(s.T(), err)
364-
assert.Equal(s.T(), 0.0, data)
365-
366-
charData := &model.ElectricalConnectionCharacteristicListDataType{
367-
ElectricalConnectionCharacteristicListData: []model.ElectricalConnectionCharacteristicDataType{
368-
{
369-
ElectricalConnectionId: eebusutil.Ptr(model.ElectricalConnectionIdType(0)),
370-
CharacteristicId: eebusutil.Ptr(model.ElectricalConnectionCharacteristicIdType(0)),
371-
CharacteristicContext: eebusutil.Ptr(model.ElectricalConnectionCharacteristicContextTypeEntity),
372-
CharacteristicType: eebusutil.Ptr(model.ElectricalConnectionCharacteristicTypeTypeContractualConsumptionNominalMax),
373-
Value: model.NewScaledNumberType(7000),
374-
},
375-
},
376-
}
377-
378-
rFeature := s.remoteDevice.FeatureByEntityTypeAndRole(s.monitoredEntity, model.FeatureTypeTypeElectricalConnection, model.RoleTypeServer)
379-
fErr := rFeature.UpdateData(model.FunctionTypeElectricalConnectionCharacteristicListData, charData, nil, nil)
380-
assert.Nil(s.T(), fErr)
381-
382-
data, err = s.sut.ContractualConsumptionNominalMax(s.monitoredEntity)
383-
assert.Nil(s.T(), err)
384-
assert.Equal(s.T(), 7000.0, data)
385-
}

0 commit comments

Comments
 (0)