String name = directive.getName(); if( null == name ) { m_path = partition + m_type.getInfo().getName(); } else { m_path = partition + name; }
    public DefaultComponentModel(       ClassLoader anchor, ComponentController controller, Classpath classpath,       ComponentDirective directive, String partition )       throws ControlException, IOException, RemoteException    {        super( new StandardLogger( partition.substring( 1 ).replace( '/', '.' ) ) );                m_classpath = classpath;        m_controller = controller;        m_path = partition + directive.getName();        m_directive = directive;        m_classloader = m_controller.getClassLoader( anchor, classpath );        m_classname = directive.getClassname();        m_class = m_controller.loadComponentClass( m_classloader, m_classname );        m_type = m_controller.loadType( m_class );                m_activation = directive.getActivationPolicy();        m_lifestyle = directive.getLifestylePolicy();        m_collection = directive.getCollectionPolicy();        m_parameters = directive.getParameters();        m_configuration = directive.getConfiguration();                ContextDirective context = directive.getContextDirective();        Logger logger = getLogger();        m_context = new DefaultContextModel( this, logger, m_classloader, m_type, context );                final String base = m_path + PARTITION_SEPARATOR;        processParts( controller, m_classloader, m_type, m_parts, base );        processParts( controller, m_classloader, m_directive, m_parts, base );    }