class EmbeddedSensorObservationPeriod implements IEmbeddedSensorObservationPeriod {

    @Override
    public IObject createMessage()
            throws ResolutionException, ChangeValueException, InvalidArgumentException, EmbeddedSensorStrategyException {
        IObject message = IOC.resolve(Keys.getOrAdd("info.smart_tools.smartactors.iobject.iobject.IObject"));
        message.setValue(periodStartFieldName, periodStart);
        message.setValue(periodEndFieldName, periodEnd);
        message.setValue(dataFieldName, extractData());
        return message;
    }

    public  EmbeddedSensorObservationPeriod(final long start, final long end, final long nItems, final IEmbeddedSensorStrategy<TState> strategy);

}