@ Override public AttributeValue_4 [ ] read_attributes_4 ( final String [ ] names , final DevSource source , final ClntIdent clIdent ) throws DevFailed { // final Profiler profilerPeriod = new Profiler("period"); // profilerPeriod.start(Arrays.toString(names)); MDC . setContextMap ( contextMap ) ; xlogger . entry ( Arrays . toString ( names ) ) ; if ( names . length != 1 || ! names [ 0 ] . equalsIgnoreCase ( DeviceImpl . STATE_NAME ) && ! names [ 0 ] . equalsIgnoreCase ( DeviceImpl . STATUS_NAME ) ) { checkInitialization ( ) ; } deviceMonitoring . startRequest ( "read_attributes_4 " + Arrays . toString ( names ) , source , clIdent ) ; clientIdentity . set ( clIdent ) ; if ( names . length == 0 ) { throw DevFailedUtils . newDevFailed ( READ_ERROR , READ_ASKED_FOR_0_ATTRIBUTES ) ; } if ( ! name . equalsIgnoreCase ( getAdminDeviceName ( ) ) ) { clientLocking . checkClientLocking ( clIdent , names ) ; } AttributeValue_4 [ ] result = null ; try { result = AttributeGetterSetter . getAttributesValues4 ( name , names , pollingManager , attributeList , aroundInvokeImpl , source , deviceLock , clIdent ) ; } catch ( final Exception e ) { deviceMonitoring . addError ( ) ; if ( e instanceof DevFailed ) { throw ( DevFailed ) e ; } else { // with CORBA, the stack trace is not visible by the client if // not inserted in DevFailed. throw DevFailedUtils . newDevFailed ( e ) ; } } xlogger . exit ( ) ; // profilerPeriod.stop().print(); return result ; }
Read some attributes . IDL 4 version .