mil.dod.th.ose.integration/src/mil/dod/th/ose/controller/integration/ObservationHelper.java
public static Observation createStatusObservation() throws DatatypeConfigurationException
    {
        ComponentStatus status1 = new ComponentStatus(new ComponentType(ComponentTypeEnum.NAVIGATION, "ins"),
                new OperatingStatus(SummaryStatusEnum.BAD, "no satellites"));
        ComponentStatus status2 = new ComponentStatus(new ComponentType(ComponentTypeEnum.DSP, "yup"),
                new OperatingStatus(SummaryStatusEnum.GOOD, "stuff"));
        
        List<ComponentStatus> componentStatuses = new ArrayList<>();
        componentStatuses.add(status1);
        componentStatuses.add(status2);
        BatteryChargeLevel batteryChargeLevel = 
                new BatteryChargeLevel(ChargeLevelEnum.FULL, null);
        Double sensorFov = 300.00;
        VoltageVolts batteryVoltage = new VoltageVolts().withValue(15.00);
        TemperatureCelsius temperature = new TemperatureCelsius().withValue(10.00);
        PowerWatts powerConsumption = new PowerWatts().withValue(10.00);
        VoltageVolts analogAnalogVoltage = new VoltageVolts().withValue(10.00);
        VoltageVolts analogDigitalVoltage = new VoltageVolts().withValue(10.00);
        VoltageVolts analogMagVoltage = new VoltageVolts().withValue(10.00);
        
        DistanceMeters sensorRange =
                new DistanceMeters(100.0, 1.0, 1.0, 1.0, 0.0);
        int assetOnTime = 10;
        
        InternalArchiveStatus internalArchiveStatus = new InternalArchiveStatus();
        internalArchiveStatus.setArchivingInProgress(true);
        internalArchiveStatus.setArchiveTimeAvailable(1000L);
        internalArchiveStatus.setTotalArchiveTime(3000L);
        int nextStatusDurationMs = 12000;
        
        List<AmbientStatus> ambientStatus = new ArrayList<>();
        ambientStatus.add(new AmbientStatus(
                new AmbientType(AmbientTypeEnum.OCCLUSION, "occlusion"), 
                    new OperatingStatus(SummaryStatusEnum.BAD, "occlusions are bad")));

        List<AlgorithmStatus> algoStatus = new ArrayList<>();
        algoStatus.add(new AlgorithmStatus()
            .withAlgorithmId("testAlgorithm")
            .withDetectionInterval(1.0f)
            .withFrameSizeSamples(1)
            .withHighFrequencyCutoff(new FrequencyKhz().withValue(100.0))
            .withLowFrequencyCutoff(new FrequencyKhz().withValue(50.0))
            .withProbablityDetection(0.5)
            .withSampleRateKHz(2.0f)
            .withSensitivity(0.6)
            .withSignatureInterval(2.0f));

        Status status = new Status(new OperatingStatus(SummaryStatusEnum.GOOD, "stuff too"),
                componentStatuses,
                ambientStatus,
                batteryChargeLevel,
                sensorRange,
                sensorFov,
                internalArchiveStatus, 
                temperature,
                batteryVoltage,
                powerConsumption,
                analogAnalogVoltage,
                analogDigitalVoltage,
                analogMagVoltage,
                algoStatus,
                assetOnTime,
                nextStatusDurationMs);

        return ObservationHelper.createBaseObservation()
                   .withUuid(UUID.fromString("328da040-85bb-11e2-9e96-0800200c9a81")).withStatus(status);       
    }
/**
     * This will create a complete observation for status  The {@link Status} object
     * will have all fields filled out as much as possible.  This can be used to compare with something pull from the 
     * database to prove that it is actually persisted.  Fields will always contain the same info so this method if 
     * called multiple times will create a different object, but will be equal to the previous one.
     * @return 
     *      Observation of status
     * @throws DatatypeConfigurationException 
     *      thrown when there is duration configuration error
     */
This will create a complete observation for status  The  Status object
will have all fields filled out as much as possible.  This can be used to compare with something pull from the
database to prove that it is actually persisted.  Fields will always contain the same info so this method if
called multiple times will create a different object, but will be equal to the previous one.
@return
Observation of status
@throws DatatypeConfigurationException
thrown when there is duration configuration error
This will create a complete observation for status The Status object will have all fields filled out as much as possible . This can be used to compare with something pull from the database to prove that it is actually persisted . Fields will always contain the same info so this method if called multiple times will create a different object but will be equal to the previous one . @return Observation of status @throws DatatypeConfigurationException thrown when there is duration configuration error
public static Observation createStatusObservation() throws DatatypeConfigurationException
    {
        ComponentStatus status1 = new ComponentStatus(new ComponentType(ComponentTypeEnum.NAVIGATION, "ins"),
                new OperatingStatus(SummaryStatusEnum.BAD, "no satellites"));
        ComponentStatus status2 = new ComponentStatus(new ComponentType(ComponentTypeEnum.DSP, "yup"),
                new OperatingStatus(SummaryStatusEnum.GOOD, "stuff"));
        List<ComponentStatus> componentStatuses = new ArrayList<>();
        componentStatuses.add(status1);
        componentStatuses.add(status2);
        BatteryChargeLevel batteryChargeLevel = 
                new BatteryChargeLevel(ChargeLevelEnum.FULL, null);
        Double sensorFov = 300.00;
        VoltageVolts batteryVoltage = new VoltageVolts().withValue(15.00);
        TemperatureCelsius temperature = new TemperatureCelsius().withValue(10.00);
        PowerWatts powerConsumption = new PowerWatts().withValue(10.00);
        VoltageVolts analogAnalogVoltage = new VoltageVolts().withValue(10.00);
        VoltageVolts analogDigitalVoltage = new VoltageVolts().withValue(10.00);
        VoltageVolts analogMagVoltage = new VoltageVolts().withValue(10.00);
        DistanceMeters sensorRange =
                new DistanceMeters(100.0, 1.0, 1.0, 1.0, 0.0);
        int assetOnTime = 10;
        InternalArchiveStatus internalArchiveStatus = new InternalArchiveStatus();
        internalArchiveStatus.setArchivingInProgress(true);
        internalArchiveStatus.setArchiveTimeAvailable(1000L);
        internalArchiveStatus.setTotalArchiveTime(3000L);
        int nextStatusDurationMs = 12000;
        List<AmbientStatus> ambientStatus = new ArrayList<>();
        ambientStatus.add(new AmbientStatus(
                new AmbientType(AmbientTypeEnum.OCCLUSION, "occlusion"), 
                    new OperatingStatus(SummaryStatusEnum.BAD, "occlusions are bad")));
        List<AlgorithmStatus> algoStatus = new ArrayList<>();
        algoStatus.add(new AlgorithmStatus()
            .withAlgorithmId("testAlgorithm")
            .withDetectionInterval(1.0f)
            .withFrameSizeSamples(1)
            .withHighFrequencyCutoff(new FrequencyKhz().withValue(100.0))
            .withLowFrequencyCutoff(new FrequencyKhz().withValue(50.0))
            .withProbablityDetection(0.5)
            .withSampleRateKHz(2.0f)
            .withSensitivity(0.6)
            .withSignatureInterval(2.0f));
        Status status = new Status(new OperatingStatus(SummaryStatusEnum.GOOD, "stuff too"),
                componentStatuses,
                ambientStatus,
                batteryChargeLevel,
                sensorRange,
                sensorFov,
                internalArchiveStatus, 
                temperature,
                batteryVoltage,
                powerConsumption,
                analogAnalogVoltage,
                analogDigitalVoltage,
                analogMagVoltage,
                algoStatus,
                assetOnTime,
                nextStatusDurationMs);
        return ObservationHelper.createBaseObservation()
                   .withUuid(UUID.fromString("328da040-85bb-11e2-9e96-0800200c9a81")).withStatus(status);       
    }
public static Observation createStatusObservation ( ) throws DatatypeConfigurationException { ComponentStatus status1 = new ComponentStatus ( new ComponentType ( ComponentTypeEnum . NAVIGATION , "ins" ) , new OperatingStatus ( SummaryStatusEnum . BAD , "no satellites" ) ) ; ComponentStatus status2 = new ComponentStatus ( new ComponentType ( ComponentTypeEnum . DSP , "yup" ) , new OperatingStatus ( SummaryStatusEnum . GOOD , "stuff" ) ) ; List < ComponentStatus > componentStatuses = new ArrayList < > ( ) ; componentStatuses . add ( status1 ) ; componentStatuses . add ( status2 ) ; BatteryChargeLevel batteryChargeLevel = new BatteryChargeLevel ( ChargeLevelEnum . FULL , null ) ; Double sensorFov = 300.00 ; VoltageVolts batteryVoltage = new VoltageVolts ( ) . withValue ( 15.00 ) ; TemperatureCelsius temperature = new TemperatureCelsius ( ) . withValue ( 10.00 ) ; PowerWatts powerConsumption = new PowerWatts ( ) . withValue ( 10.00 ) ; VoltageVolts analogAnalogVoltage = new VoltageVolts ( ) . withValue ( 10.00 ) ; VoltageVolts analogDigitalVoltage = new VoltageVolts ( ) . withValue ( 10.00 ) ; VoltageVolts analogMagVoltage = new VoltageVolts ( ) . withValue ( 10.00 ) ; DistanceMeters sensorRange = new DistanceMeters ( 100.0 , 1.0 , 1.0 , 1.0 , 0.0 ) ; int assetOnTime = 10 ; InternalArchiveStatus internalArchiveStatus = new InternalArchiveStatus ( ) ; internalArchiveStatus . setArchivingInProgress ( true ) ; internalArchiveStatus . setArchiveTimeAvailable ( 1000L ) ; internalArchiveStatus . setTotalArchiveTime ( 3000L ) ; int nextStatusDurationMs = 12000 ; List < AmbientStatus > ambientStatus = new ArrayList < > ( ) ; ambientStatus . add ( new AmbientStatus ( new AmbientType ( AmbientTypeEnum . OCCLUSION , "occlusion" ) , new OperatingStatus ( SummaryStatusEnum . BAD , "occlusions are bad" ) ) ) ; List < AlgorithmStatus > algoStatus = new ArrayList < > ( ) ; algoStatus . add ( new AlgorithmStatus ( ) . withAlgorithmId ( "testAlgorithm" ) . withDetectionInterval ( 1.0f ) . withFrameSizeSamples ( 1 ) . withHighFrequencyCutoff ( new FrequencyKhz ( ) . withValue ( 100.0 ) ) . withLowFrequencyCutoff ( new FrequencyKhz ( ) . withValue ( 50.0 ) ) . withProbablityDetection ( 0.5 ) . withSampleRateKHz ( 2.0f ) . withSensitivity ( 0.6 ) . withSignatureInterval ( 2.0f ) ) ; Status status = new Status ( new OperatingStatus ( SummaryStatusEnum . GOOD , "stuff too" ) , componentStatuses , ambientStatus , batteryChargeLevel , sensorRange , sensorFov , internalArchiveStatus , temperature , batteryVoltage , powerConsumption , analogAnalogVoltage , analogDigitalVoltage , analogMagVoltage , algoStatus , assetOnTime , nextStatusDurationMs ) ; return ObservationHelper . createBaseObservation ( ) . withUuid ( UUID . fromString ( "328da040-85bb-11e2-9e96-0800200c9a81" ) ) . withStatus ( status ) ; }
This will create a complete observation for status  The {@link Status} object
 will have all fields filled out as much as possible.
This will create a complete observation for status The { @link Status } object will have all fields filled out as much as possible .