public ClassDescriptor buildPojoEmployeeDescriptor() {
    RelationalDescriptor descriptor = new RelationalDescriptor();
    descriptor.setJavaClass(
        org.eclipse.persistence.testing.tests.simplepojoclient.PojoEmployee.class);
    descriptor.addTableName("POJO_EMPLOYEE");
    descriptor.addPrimaryKeyFieldName("POJO_EMPLOYEE.EMP_ID");

    // Descriptor Properties.
    descriptor.useSoftCacheWeakIdentityMap();
    descriptor.setIdentityMapSize(100);
    descriptor.useRemoteSoftCacheWeakIdentityMap();
    descriptor.setRemoteIdentityMapSize(100);
    descriptor.setAlias("PojoEmployee");

    // Query Manager.
    descriptor.getQueryManager().checkCacheForDoesExist();

    // Event Manager.

    // Mappings.
    DirectToFieldMapping empIdMapping = new DirectToFieldMapping();
    empIdMapping.setAttributeName("empId");
    empIdMapping.setGetMethodName("getEmpId");
    empIdMapping.setSetMethodName("setEmpId");
    empIdMapping.setFieldName("POJO_EMPLOYEE.EMP_ID");
    descriptor.addMapping(empIdMapping);

    DirectToFieldMapping fNameMapping = new DirectToFieldMapping();
    fNameMapping.setAttributeName("fName");
    fNameMapping.setGetMethodName("getFName");
    fNameMapping.setSetMethodName("setFName");
    fNameMapping.setFieldName("POJO_EMPLOYEE.F_NAME");
    descriptor.addMapping(fNameMapping);

    DirectToFieldMapping genderMapping = new DirectToFieldMapping();
    genderMapping.setAttributeName("gender");
    genderMapping.setGetMethodName("getGender");
    genderMapping.setSetMethodName("setGender");
    genderMapping.setFieldName("POJO_EMPLOYEE.GENDER");
    ObjectTypeConverter genderMappingConverter = new ObjectTypeConverter();
    genderMappingConverter.addConversionValue(new Character('F'), "Female");
    genderMappingConverter.addConversionValue(new Character('M'), "Male");
    genderMapping.setConverter(genderMappingConverter);
    descriptor.addMapping(genderMapping);

    DirectToFieldMapping lNameMapping = new DirectToFieldMapping();
    lNameMapping.setAttributeName("lName");
    lNameMapping.setGetMethodName("getLName");
    lNameMapping.setSetMethodName("setLName");
    lNameMapping.setFieldName("POJO_EMPLOYEE.L_NAME");
    descriptor.addMapping(lNameMapping);

    DirectToFieldMapping managerIdMapping = new DirectToFieldMapping();
    managerIdMapping.setAttributeName("managerId");
    managerIdMapping.setGetMethodName("getManagerId");
    managerIdMapping.setSetMethodName("setManagerId");
    managerIdMapping.setFieldName("POJO_EMPLOYEE.MANAGER_ID");
    descriptor.addMapping(managerIdMapping);

    return descriptor;
  }