@Trivial
    @Modified
    protected void modified(ComponentContext context) {
        Dictionary<String, ?> props = context.getProperties();
        final boolean trace = TraceComponent.isAnyTracingEnabled();
        if (trace && tc.isEntryEnabled())
            Tr.entry(this, tc, "modified", props);

        String contextSvcName = (String) props.get(JNDI_NAME);
        if (contextSvcName == null)
            contextSvcName = (String) props.get(CONFIG_ID);

        ContextServiceImpl[] listeners;

        lock.writeLock().lock();
        try {
            listeners = modificationListeners.toArray(new ContextServiceImpl[modificationListeners.size()]);
            modificationListeners.clear();

            componentContext = context;
            properties = props;
            name = contextSvcName;
            threadContextConfigurations = null;
        } finally {
            lock.writeLock().unlock();
        }

        for (ContextServiceImpl listener : listeners)
            listener.baseInstanceModified();

        if (trace && tc.isEntryEnabled())
            Tr.exit(this, tc, "modified");
    }
@ Trivial @ Modified protected void modified ( ComponentContext context ) { Dictionary < String , ? > props = context . getProperties ( ) ; final boolean trace = TraceComponent . isAnyTracingEnabled ( ) ; if ( trace && tc . isEntryEnabled ( ) ) Tr . entry ( this , tc , "modified" , props ) ; String contextSvcName = ( String ) props . get ( JNDI_NAME ) ; if ( contextSvcName == null ) contextSvcName = ( String ) props . get ( CONFIG_ID ) ; ContextServiceImpl [ ] listeners ; lock . writeLock ( ) . lock ( ) ; try { listeners = modificationListeners . toArray ( new ContextServiceImpl [ modificationListeners . size ( ) ] ) ; modificationListeners . clear ( ) ; componentContext = context ; properties = props ; name = contextSvcName ; threadContextConfigurations = null ; } finally { lock . writeLock ( ) . unlock ( ) ; } for ( ContextServiceImpl listener : listeners ) listener . baseInstanceModified ( ) ; if ( trace && tc . isEntryEnabled ( ) ) Tr . exit ( this , tc , "modified" ) ; }
Called by Declarative Services to modify service config properties

@param context DeclarativeService defined/populated component context