protected void createComponent ( int componentId , String cclass , String cname , FrameProvider fprov ) { // look up the component class information ComponentClass clazz = _classes . get ( cclass ) ; if ( clazz == null ) { log . warning ( "Non-existent component class" , "class" , cclass , "name" , cname , "id" , componentId ) ; return ; } // create the component CharacterComponent component = new CharacterComponent ( componentId , cname , clazz , fprov ) ; // stick it into the appropriate tables _components . put ( componentId , component ) ; // we have a hash of lists for mapping components by class/name ArrayList < CharacterComponent > comps = _classComps . get ( cclass ) ; if ( comps == null ) { comps = Lists . newArrayList ( ) ; _classComps . put ( cclass , comps ) ; } if ( ! comps . contains ( component ) ) { comps . add ( component ) ; } else { log . info ( "Requested to register the same component twice?" , "comp" , component ) ; } }
Creates a component and inserts it into the component table .