# File lib/pluginfactory.rb, line 272
        def get_subclass( class_name )
                return self if ( self.name == class_name || class_name == '' )
                if class_name.is_a?( Class )
                        return class_name if class_name <= self
                        raise ArgumentError, "%s is not a descendent of %s" % [class_name, self]
                end

                class_name = class_name.to_s

                # If the derivatives hash doesn't already contain the class, try to load it
                unless self.derivatives.has_key?( class_name.downcase )
                        self.load_derivative( class_name )

                        subclass = self.derivatives[ class_name.downcase ]
                        unless subclass.is_a?( Class )
                                raise FactoryError,
                                        "load_derivative(%s) added something other than a class "\
                                        "to the registry for %s: %p" %
                                        [ class_name, self.name, subclass ]
                        end
                end

                return self.derivatives[ class_name.downcase ]
        end