code: private void checkQueryCustomizer(CollectionDescriptorDef collDef, String checkLevel) throws ConstraintException
      {
          if (!CHECKLEVEL_STRICT.equals(checkLevel))
          {
              return;
          }
          
          String queryCustomizerName  = collDef.getProperty(PropertyHelper.OJB_PROPERTY_QUERY_CUSTOMIZER);
  
          if (queryCustomizerName == null)
          {
              return;
          }
  
          try
          {
              InheritanceHelper helper = new InheritanceHelper();
  
              if (!helper.isSameOrSubTypeOf(queryCustomizerName, QUERY_CUSTOMIZER_INTERFACE))
              {
                  throw new ConstraintException("The class "+queryCustomizerName+" specified as query-customizer of collection "+collDef.getName()+" in class "+collDef.getOwner().getName()+" does not implement the interface "+QUERY_CUSTOMIZER_INTERFACE);
              }
          }
          catch (ClassNotFoundException ex)
          {
              throw new ConstraintException("The class "+ex.getMessage()+" specified as query-customizer of collection "+collDef.getName()+" in class "+collDef.getOwner().getName()+" was not found on the classpath");
          }
      }
docs: Checks the query-customizer setting of the given collection descriptor.
  
  @param collDef    The collection descriptor
  @param checkLevel The current check level (this constraint is only checked in strict)
  @exception ConstraintException If the constraint has been violated