public AssetBeliefState update( AssetStateDescriptor asd,
public AssetBeliefState update( AssetStateDimension asd,
    public AssetBeliefState update( AssetStateDescriptor asd,                                    CompositeDiagnosis composite_diagnosis )             throws BelievabilityException     {                // Get the last diagnosis time.        Long last_diag_t = (Long) _last_diag_times.get(asd.getStateName());        Long last_belief_t = (Long) _last_belief_times.get(asd.getStateName());        if ( last_diag_t == null )            throw new BelievabilityException                    ( "Did not find last diagnosis time." );        if ( last_belief_t == null )            throw new BelievabilityException                    ( "Did not find last belief time." );        long last_diag_time = last_diag_t.longValue();        long last_belief_time = last_belief_t.longValue();        long diag_time = composite_diagnosis.getTimestamp();        long cur_time = System.currentTimeMillis();        AssetBeliefState prev_belief                = getInitialBelief( _asset_model.getAssetName(),                                     asd );        if (this._logger.isDebugEnabled())             this._logger.debug("    Previous belief: "                               + prev_belief.toString()                               + "\n" );        // Here we do all the work.        //        AssetBeliefState new_belief                 =  transformBeliefState( prev_belief,                                         composite_diagnosis,                                         last_diag_time,                                         last_belief_time,                                         diag_time,                                         cur_time );        new_belief.setCompositeDiagnosis( composite_diagnosis );                if (this._logger.isDebugEnabled())             this._logger.debug("    Next belief: "                               + new_belief.toString()                               + "\n" );        // Before returning, update the last diagnosis time for the        // next belief computation.        //        this._last_diag_times.put( asd.getStateName(),                                   new Long( diag_time ));        this._last_belief_times.put( asd.getStateName(),                                     new Long( cur_time ));        return new_belief;    } // update