nus-yam/ex-repair huggingface dataset:
Program: 63493
Project: 63493
Buggy source:
/** 
 * INTERNAL: Adds a notification listener to the ApplicationRuntimeMBean instance with "ApplicationName"  attribute equals to 'mapKey.applicationName'.  The listener will handle application  re-deployment. If any errors occur, we will fail silently, i.e. the listener will not be added. This method should only be called when running in an active WLS instance.
 * @param applicationName
 */
private static void addWLSNotificationListener(String applicationName){
  if (getWLSMBeanServer() != null) {
    try {
      ObjectName service=new ObjectName(WLS_SERVICE_KEY);
      ObjectName serverRuntime=(ObjectName)wlsMBeanServer.getAttribute(service,WLS_SERVER_RUNTIME);
      ObjectName[] appRuntimes=(ObjectName[])wlsMBeanServer.getAttribute(serverRuntime,WLS_APP_RUNTIMES);
      for (int i=0; i < appRuntimes.length; i++) {
        try {
          ObjectName appRuntime=appRuntimes[i];
          Object appName=wlsMBeanServer.getAttribute(appRuntime,WLS_APPLICATION_NAME);
          if (appName != null && appName.toString().equals(applicationName)) {
            wlsMBeanServer.addNotificationListener(appRuntime,new MyNotificationListener(applicationName,WLS_IDENTIFIER),null,null);
            break;
          }
        }
 catch (        Exception ex) {
        }
      }
    }
 catch (    Exception x) {
    }
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Adds a notification listener to the ApplicationRuntimeMBean instance with "ApplicationName"  attribute equals to 'mapKey.applicationName'.  The listener will handle application  re-deployment. If any errors occur, we will fail silently, i.e. the listener will not be added. This method should only be called when running in an active WLS instance.
 * @param applicationName
 */
private static void addWLSNotificationListener(String applicationName){
  if (getWLSMBeanServer() != null) {
    try {
      ObjectName service=new ObjectName(WLS_SERVICE_KEY);
      ObjectName serverRuntime=(ObjectName)wlsMBeanServer.getAttribute(service,WLS_SERVER_RUNTIME);
      ObjectName[] appRuntimes=(ObjectName[])wlsMBeanServer.getAttribute(serverRuntime,WLS_APP_RUNTIMES);
      for (int i=0; i < appRuntimes.length; i++) {
        try {
          ObjectName appRuntime=appRuntimes[i];
          Object appName=wlsMBeanServer.getAttribute(appRuntime,WLS_APPLICATION_NAME);
          Object appVersion=wlsMBeanServer.getAttribute(appRuntime,WLS_APPLICATION_VERSION);
          String appIdentifier=null;
          if (appName != null) {
            if (appVersion != null) {
              appIdentifier=appName.toString() + "String_Node_Str" + appVersion.toString();
            }
 else {
              appIdentifier=appName.toString();
            }
            if (appIdentifier != null && appIdentifier.equals(applicationName)) {
              wlsMBeanServer.addNotificationListener(appRuntime,new MyNotificationListener(applicationName,WLS_IDENTIFIER),null,null);
              break;
            }
          }
        }
 catch (        Exception ex) {
        }
      }
    }
 catch (    Exception x) {
    }
  }
}
Program: 63494
Project: 63494
Buggy source:
/** 
 * INTERNAL: This method will set this listener to ignore events not issues by EclipseLink
 */
public void processEvents(){
  this.ignoreEvents=false;
}

Fixed version (ground truth):
/** 
 * INTERNAL: This method will set this listener to ignore events not issues by EclipseLink
 */
public void processEvents(){
  --ignoreDepth;
  if (ignoreDepth == 0) {
    this.ignoreEvents=false;
  }
}
Program: 63495
Project: 63495
Buggy source:
/** 
 * INTERNAL: This method will set this listener to ignore events not issues by EclipseLink
 */
public void ignoreEvents(){
  this.ignoreEvents=true;
}

Fixed version (ground truth):
/** 
 * INTERNAL: This method will set this listener to ignore events not issues by EclipseLink
 */
public void ignoreEvents(){
  ++ignoreDepth;
  this.ignoreEvents=true;
}
Program: 63496
Project: 63496
Buggy source:
public AdvancedFetchGroupTableCreator(){
  setName("String_Node_Str");
  addTableDefinition(buildHOCKEYGEARTable());
  addTableDefinition(buildPADSTable());
  addTableDefinition(buildCHESTPROTECTORTable());
}

Fixed version (ground truth):
public AdvancedFetchGroupTableCreator(){
  setName("String_Node_Str");
  addTableDefinition(buildHOCKEYGEARTable());
  addTableDefinition(buildPADSTable());
  addTableDefinition(buildCHESTPROTECTORTable());
  addTableDefinition(buildHELMETTable());
  addTableDefinition(buildHELMET_PROPERTIESTable());
}
Program: 63497
Project: 63497
Buggy source:
public static Test suite(){
  TestSuite suite=new TestSuite();
  suite.setName("String_Node_Str");
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  return suite;
}

Fixed version (ground truth):
public static Test suite(){
  TestSuite suite=new TestSuite();
  suite.setName("String_Node_Str");
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  suite.addTest(new AdvancedFetchGroupJunitTest("String_Node_Str"));
  return suite;
}
Program: 63498
Project: 63498
Buggy source:
public ReferenceKey(Object sourceObject,Mapping mapping){
  this.sourceObject=sourceObject;
  this.mapping=mapping;
}

Fixed version (ground truth):
public ReferenceKey(final Reference ref){
  this.sourceObject=ref.getSourceObject();
  this.mapping=ref.getMapping();
}
Program: 63499
Project: 63499
Buggy source:
public void setMapping(Mapping mapping){
  this.mapping=mapping;
}

Fixed version (ground truth):
public void setMapping(final ObjectReferenceMapping mapping){
  this.mapping=mapping;
}
Program: 63500
Project: 63500
Buggy source:
/** 
 * Add a Reference object to the list - these References will be resolved after unmarshalling is complete.
 * @param ref
 */
public void addReference(Reference ref){
  references.add(ref);
}

Fixed version (ground truth):
/** 
 * Add a Reference object to the list - these References will be resolved after unmarshalling is complete.
 */
public final void addReference(final Reference ref){
  final ReferenceKey key=new ReferenceKey(ref);
  final Reference previous=referencesMap.get(key);
  if (previous != null || ref.getSourceObject() instanceof Collection) {
    unluckyRefPositions.add(referencesMap.size() + unluckyReferences.size());
    unluckyReferences.add(ref);
  }
 else {
    referencesMap.put(key,ref);
  }
}
Program: 63501
Project: 63501
Buggy source:
/** 
 * The default constructor initializes the list of References.
 */
public ReferenceResolver(){
  references=new ArrayList();
  lookupKey=new ReferenceKey(null,null);
  cache=new HashMap<Class,Map<Object,Object>>();
}

Fixed version (ground truth):
/** 
 * The default constructor initializes the list of References.
 */
public ReferenceResolver(){
  referencesMap=new LinkedHashMap<ReferenceKey,Reference>();
  unluckyReferences=new ArrayList<Reference>();
  unluckyRefPositions=new LinkedList<Integer>();
  cache=new HashMap<Class,Map<Object,Object>>();
  refKey=new ReferenceKey();
}
Program: 63502
Project: 63502
Buggy source:
private Object getValue(Class clazz,CacheId primaryKey){
  Map<Object,Object> keyToObject=cache.get(clazz);
  if (null != keyToObject) {
    return keyToObject.get(primaryKey);
  }
  return null;
}

Fixed version (ground truth):
/** 
 * Retrieves value from   {@link #cache}.
 */
private Object getValue(Class clazz,CacheId primaryKey){
  Map<Object,Object> keyToObject=cache.get(clazz);
  if (null != keyToObject) {
    return keyToObject.get(primaryKey);
  }
  return null;
}
Program: 63503
Project: 63503
Buggy source:
@Override public int hashCode(){
  return this.mapping.hashCode() ^ this.sourceObject.hashCode();
}

Fixed version (ground truth):
@Override public final int hashCode(){
  int result=System.identityHashCode(sourceObject);
  result=31 * result + System.identityHashCode(mapping);
  return result;
}
Program: 63504
Project: 63504
Buggy source:
public void setSourceObject(Object obj){
  this.sourceObject=obj;
}

Fixed version (ground truth):
public void setSourceObject(final Object sourceObject){
  this.sourceObject=sourceObject;
}
Program: 63505
Project: 63505
Buggy source:
@Override public boolean equals(Object obj){
  if (obj == null) {
    return false;
  }
  if (obj.getClass() != this.getClass()) {
    return false;
  }
  ReferenceKey key=(ReferenceKey)obj;
  return this.sourceObject == key.getSourceObject() && this.mapping == key.getMapping();
}

Fixed version (ground truth):
@Override public final boolean equals(final Object o){
  if (this == o)   return true;
  if (!(o instanceof ReferenceKey))   return false;
  ReferenceKey that=(ReferenceKey)o;
  return sourceObject == that.sourceObject && mapping == that.mapping;
}
Program: 63507
Project: 63507
Buggy source:
/** 
 * Store an instance by key based on a mapped class.  These values will be  used when it comes time to resolve the references.
 * @since EclipseLink 2.5.0
 */
public void putValue(Class clazz,Object key,Object object){
  Map<Object,Object> keyToObject=cache.get(clazz);
  if (null == keyToObject) {
    keyToObject=new HashMap<Object,Object>();
    cache.put(clazz,keyToObject);
  }
  keyToObject.put(key,object);
}

Fixed version (ground truth):
/** 
 * Store an instance by key based on a mapped class.  These values will be used when it comes time to resolve the references.
 * @since EclipseLink 2.5.0
 */
public final void putValue(final Class clazz,final Object key,final Object object){
  Map<Object,Object> keyToObject=cache.get(clazz);
  if (null == keyToObject) {
    keyToObject=new HashMap<Object,Object>();
    cache.put(clazz,keyToObject);
  }
  keyToObject.put(key,object);
}
Program: 63509
Project: 63509
Buggy source:
/** 
 * Return a reference for the given mapping and source object, that doesn't already contain an entry for the provided field. 
 * @return
 */
public Reference getReference(ObjectReferenceMapping mapping,Object sourceObject,Field xmlField){
  Field targetField=(Field)mapping.getSourceToTargetKeyFieldAssociations().get(xmlField);
  String tgtXpath=null;
  if (!(mapping.getReferenceClass() == null || mapping.getReferenceClass() == Object.class)) {
    if (targetField != null) {
      tgtXpath=targetField.getXPath();
    }
  }
  for (int x=0; x < references.size(); x++) {
    Reference reference=(Reference)references.get(x);
    if (reference.getMapping() == mapping && reference.getSourceObject() == sourceObject) {
      if (reference.getPrimaryKeyMap().get(tgtXpath) == null) {
        return reference;
      }
    }
  }
  return null;
}

Fixed version (ground truth):
/** 
 * Return a reference for the given mapping and source object, that doesn't already contain an entry for the provided field.
 */
public final Reference getReference(final ObjectReferenceMapping mapping,final Object sourceObject,final Field xmlField){
  final Field targetField=(Field)mapping.getSourceToTargetKeyFieldAssociations().get(xmlField);
  String tgtXpath=null;
  if (!(mapping.getReferenceClass() == null || mapping.getReferenceClass() == Object.class)) {
    if (targetField != null) {
      tgtXpath=targetField.getXPath();
    }
  }
  final ReferenceKey key=new ReferenceKey(sourceObject,mapping);
  Reference reference=referencesMap.get(key);
  if (reference != null && reference.getPrimaryKeyMap().get(tgtXpath) == null) {
    return reference;
  }
  for (  Reference reference1 : unluckyReferences) {
    if (reference1.getMapping() == mapping && reference1.getSourceObject() == sourceObject) {
      if (reference1.getPrimaryKeyMap().get(tgtXpath) == null) {
        return reference1;
      }
    }
  }
  return null;
}
Program: 63510
Project: 63510
Buggy source:
public static Test suite(){
  TestSuite suite=new TestSuite("String_Node_Str");
  suite.addTestSuite(JAXBCaseInsensitivityPerfTestCase.class);
  return suite;
}

Fixed version (ground truth):
public static Test suite(){
  TestSuite suite=new TestSuite("String_Node_Str");
  suite.addTestSuite(JAXBCaseInsensitivityPerfTestCase.class);
  suite.addTestSuite(PerformanceReferenceResolverTestCase.class);
  return suite;
}
Program: 63511
Project: 63511
Buggy source:
@Column(name="String_Node_Str") @Temporal(TIMESTAMP) public Calendar getCalendar(){
  return calendar;
}

Fixed version (ground truth):
@Column(name="String_Node_Str") public Calendar getCalendar(){
  return calendar;
}
Program: 63512
Project: 63512
Buggy source:
public DateTime(java.sql.Date date,Time time,Timestamp timestamp,Date utilDate,Calendar calendar){
  this.date=date;
  this.time=time;
  this.timestamp=timestamp;
  this.utilDate=utilDate;
  this.calendar=calendar;
}

Fixed version (ground truth):
public DateTime(java.sql.Date date,Time time,Timestamp timestamp,Date utilDate,Calendar calendar){
  this.date=date;
  this.time=time;
  this.timestamp=timestamp;
  this.utilDate=utilDate;
  this.calendar=calendar;
  uniSelfMap=new HashMap<Date,DateTime>();
  uniSelfMap.put(new Date(),this);
}
Program: 63513
Project: 63513
Buggy source:
@Column(name="String_Node_Str") @Temporal(TIMESTAMP) public Date getUtilDate(){
  return utilDate;
}

Fixed version (ground truth):
@Column(name="String_Node_Str") @Temporal(TemporalType.TIMESTAMP) public Date getUtilDate(){
  return utilDate;
}
Program: 63514
Project: 63514
Buggy source:
public DateTimeTableCreator(){
  setName("String_Node_Str");
  addTableDefinition(buildDateTimeTable());
}

Fixed version (ground truth):
public DateTimeTableCreator(){
  setName("String_Node_Str");
  addTableDefinition(buildDateTimeTable());
  addTableDefinition(buildDateTimeSelfTable());
}
Program: 63515
Project: 63515
Buggy source:
public Mason(){
  awards=new HashMap<Date,String>();
}

Fixed version (ground truth):
public Mason(){
  awards=new HashMap<Date,String>();
  hoursWorked=new HashMap<Date,Integer>();
  uniSelf=new HashMap<Date,Mason>();
}
Program: 63516
Project: 63516
Buggy source:
public Map<String,String> getPrefixesToNamespaces(){
  if (null == prefixesToNamespaces) {
    prefixesToNamespaces=new HashMap<String,String>();
  }
  return prefixesToNamespaces;
}

Fixed version (ground truth):
public Map<String,String> getPrefixesToNamespaces(){
  if (null == prefixesToNamespaces) {
    prefixesToNamespaces=new LinkedHashMap<String,String>();
  }
  return prefixesToNamespaces;
}
Program: 63517
Project: 63517
Buggy source:
/** 
 * Adds a namespace to the collection of namespaces on the NamespaceResolver
 * @param prefix  The prefix for a namespace
 * @param namespaceURI  The namespace URI associated with the specified prefix
 */
public void put(String prefix,String namespaceURI){
  if (null == prefix || 0 == prefix.length()) {
    defaultNamespaceURI=namespaceURI;
  }
 else {
    getPrefixesToNamespaces().put(prefix,namespaceURI.intern());
  }
}

Fixed version (ground truth):
/** 
 * Adds a namespace to the collection of namespaces on the NamespaceResolver
 * @param prefix  The prefix for a namespace
 * @param namespaceURI  The namespace URI associated with the specified prefix
 */
public void put(String prefix,String namespaceURI){
  if (null == prefix || 0 == prefix.length()) {
    defaultNamespaceURI=namespaceURI;
  }
 else {
    Map<String,String> removedItems=null;
    if (getPrefixesToNamespaces().containsValue(namespaceURI.intern())) {
      removedItems=new LinkedHashMap<String,String>();
      for (      Map.Entry<String,String> prefixEntry : getPrefixesToNamespaces().entrySet()) {
        if (namespaceURI.intern().equals(prefixEntry.getValue())) {
          removedItems.put(prefixEntry.getKey(),prefixEntry.getValue());
        }
      }
    }
    if (null != removedItems) {
      for (      String key : removedItems.keySet()) {
        getPrefixesToNamespaces().remove(key);
      }
    }
    getPrefixesToNamespaces().put(prefix,namespaceURI.intern());
    if (null != removedItems) {
      for (      Map.Entry<String,String> removedEntry : removedItems.entrySet()) {
        getPrefixesToNamespaces().put(removedEntry.getKey(),removedEntry.getValue());
      }
    }
  }
}
Program: 63518
Project: 63518
Buggy source:
/** 
 * INTERNAL: Set the namespaces on the namespace resolver based on the specified Vector of Namespace objects Used for deployment XML
 * @param names A Vector of namespace URIs
 */
public void setNamespaces(Vector names){
  prefixesToNamespaces=new HashMap<String,String>(names.size());
  for (  Namespace namespace : (Vector<Namespace>)names) {
    if ((namespace.getPrefix() != null) && (namespace.getNamespaceURI() != null)) {
      prefixesToNamespaces.put(namespace.getPrefix(),namespace.getNamespaceURI());
    }
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Set the namespaces on the namespace resolver based on the specified Vector of Namespace objects Used for deployment XML
 * @param names A Vector of namespace URIs
 */
public void setNamespaces(Vector names){
  prefixesToNamespaces=new LinkedHashMap<String,String>(names.size());
  for (  Namespace namespace : (Vector<Namespace>)names) {
    if ((namespace.getPrefix() != null) && (namespace.getNamespaceURI() != null)) {
      prefixesToNamespaces.put(namespace.getPrefix(),namespace.getNamespaceURI());
    }
  }
}
Program: 63519
Project: 63519
Buggy source:
/** 
 * Copy Constructor
 * @since EclipseLink 2.5.0
 */
public NamespaceResolver(NamespaceResolver namespaceResolver){
  this.defaultNamespaceURI=namespaceResolver.defaultNamespaceURI;
  Map<String,String> namespaceResolverPrefixesToNamespaces=namespaceResolver.prefixesToNamespaces;
  if (namespaceResolverPrefixesToNamespaces != null) {
    this.prefixesToNamespaces=new HashMap<String,String>(namespaceResolverPrefixesToNamespaces.size());
    this.prefixesToNamespaces.putAll(namespaceResolver.prefixesToNamespaces);
  }
  this.prefixCounter=namespaceResolver.prefixCounter;
  this.dom=namespaceResolver.dom;
}

Fixed version (ground truth):
/** 
 * Copy Constructor
 * @since EclipseLink 2.5.0
 */
public NamespaceResolver(NamespaceResolver namespaceResolver){
  this.defaultNamespaceURI=namespaceResolver.defaultNamespaceURI;
  Map<String,String> namespaceResolverPrefixesToNamespaces=namespaceResolver.prefixesToNamespaces;
  if (namespaceResolverPrefixesToNamespaces != null) {
    this.prefixesToNamespaces=new LinkedHashMap<String,String>(namespaceResolverPrefixesToNamespaces.size());
    this.prefixesToNamespaces.putAll(namespaceResolver.prefixesToNamespaces);
  }
  this.prefixCounter=namespaceResolver.prefixCounter;
  this.dom=namespaceResolver.dom;
}
Program: 63520
Project: 63520
Buggy source:
public void setFieldToNodeValues(Map<Field,NodeValue> fieldToNodeValues){
  this.fieldToNodeValues=fieldToNodeValues;
  this.classToNodeValues=new HashMap<Class,NodeValue>();
  for (  Field nextField : fieldToNodeValues.keySet()) {
    Class associatedClass=((Map<Field,Class>)this.xmlChoiceCollectionMapping.getFieldToClassMappings()).get(nextField);
    this.classToNodeValues.put(associatedClass,fieldToNodeValues.get(nextField));
  }
  Collection classes=this.classToNodeValues.keySet();
  for (  Class nextClass : ((Map<Class,Mapping>)this.xmlChoiceCollectionMapping.getChoiceElementMappingsByClass()).keySet()) {
    if (!(classes.contains(nextClass))) {
      Field field=(Field)xmlChoiceCollectionMapping.getClassToFieldMappings().get(nextClass);
      NodeValue nodeValue=new XMLChoiceCollectionMappingUnmarshalNodeValue(xmlChoiceCollectionMapping,xmlField,(Mapping)xmlChoiceCollectionMapping.getChoiceElementMappingsByClass().get(nextClass));
      this.classToNodeValues.put(nextClass,nodeValue);
      NodeValue nodeValueForField=fieldToNodeValues.get(field);
      nodeValue.setXPathNode(nodeValueForField.getXPathNode());
    }
  }
}

Fixed version (ground truth):
public void setFieldToNodeValues(Map<Field,NodeValue> fieldToNodeValues){
  this.fieldToNodeValues=fieldToNodeValues;
  this.classToNodeValues=new HashMap<Class,List<FieldNodeValue>>();
  for (  Field nextField : fieldToNodeValues.keySet()) {
    Class associatedClass=((Map<Field,Class>)this.xmlChoiceCollectionMapping.getFieldToClassMappings()).get(nextField);
    if (classToNodeValues.containsKey(associatedClass)) {
      classToNodeValues.get(associatedClass).add(new FieldNodeValue(nextField,fieldToNodeValues.get(nextField)));
    }
 else {
      List<FieldNodeValue> newFieldToNodeValuesList=new ArrayList<FieldNodeValue>();
      newFieldToNodeValuesList.add(new FieldNodeValue(nextField,fieldToNodeValues.get(nextField)));
      this.classToNodeValues.put(associatedClass,newFieldToNodeValuesList);
    }
  }
  Collection classes=this.classToNodeValues.keySet();
  for (  Class nextClass : ((Map<Class,Mapping>)this.xmlChoiceCollectionMapping.getChoiceElementMappingsByClass()).keySet()) {
    if (!(classes.contains(nextClass))) {
      Field field=(Field)xmlChoiceCollectionMapping.getClassToFieldMappings().get(nextClass);
      NodeValue nodeValue=new XMLChoiceCollectionMappingUnmarshalNodeValue(xmlChoiceCollectionMapping,xmlField,(Mapping)xmlChoiceCollectionMapping.getChoiceElementMappingsByClass().get(nextClass));
      List<FieldNodeValue> newFieldToNodeValuesList=new ArrayList<FieldNodeValue>();
      newFieldToNodeValuesList.add(new FieldNodeValue(field,nodeValue));
      this.classToNodeValues.put(nextClass,newFieldToNodeValuesList);
      NodeValue nodeValueForField=fieldToNodeValues.get(field);
      nodeValue.setXPathNode(nodeValueForField.getXPathNode());
    }
  }
}
Program: 63523
Project: 63523
Buggy source:
@Embedded @AttributeOverrides({@AttributeOverride(name="String_Node_Str",column=@Column(name="String_Node_Str",nullable=false)),@AttributeOverride(name="String_Node_Str",column=@Column(name="String_Node_Str",nullable=true))}) public EmploymentPeriod getPeriod(){
  return period;
}

Fixed version (ground truth):
@Embedded @AttributeOverrides({@AttributeOverride(name="String_Node_Str",column=@Column(nullable=false)),@AttributeOverride(name="String_Node_Str",column=@Column(name="String_Node_Str",nullable=true))}) public EmploymentPeriod getPeriod(){
  return period;
}
Program: 63524
Project: 63524
Buggy source:
/** 
 * INTERNAL: Process the attribute overrides for the given embedded mapping. Attribute  overrides are used to apply the correct field name translations of direct  fields. Note an embedded object mapping may be supported as the map key to an element-collection, 1-M and M-M mapping.
 */
protected void processAttributeOverrides(List<AttributeOverrideMetadata> attributeOverrides,AggregateObjectMapping aggregateObjectMapping,MetadataDescriptor embeddableDescriptor){
  Map<String,AttributeOverrideMetadata> mergedAttributeOverrides=getAttributeOverrides(attributeOverrides);
  for (  String attributeName : mergedAttributeOverrides.keySet()) {
    AttributeOverrideMetadata attributeOverride=mergedAttributeOverrides.get(attributeName);
    MappingAccessor mappingAccessor=embeddableDescriptor.getMappingAccessor(attributeName);
    if (mappingAccessor == null) {
      throw ValidationException.embeddableAttributeOverrideNotFound(embeddableDescriptor.getJavaClass(),attributeName,getJavaClass(),getAttributeName());
    }
 else     if (!mappingAccessor.isBasic()) {
      throw ValidationException.invalidEmbeddableAttributeForAttributeOverride(embeddableDescriptor.getJavaClass(),attributeName,getJavaClass(),getAttributeName());
    }
 else {
      addFieldNameTranslation(aggregateObjectMapping,attributeName,attributeOverride.getColumn().getDatabaseField(),mappingAccessor);
    }
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Process the attribute overrides for the given embedded mapping. Attribute  overrides are used to apply the correct field name translations of direct  fields. Note an embedded object mapping may be supported as the map key to an element-collection, 1-M and M-M mapping.
 */
protected void processAttributeOverrides(List<AttributeOverrideMetadata> attributeOverrides,AggregateObjectMapping aggregateObjectMapping,MetadataDescriptor embeddableDescriptor){
  Map<String,AttributeOverrideMetadata> mergedAttributeOverrides=getAttributeOverrides(attributeOverrides);
  for (  String attributeName : mergedAttributeOverrides.keySet()) {
    AttributeOverrideMetadata attributeOverride=mergedAttributeOverrides.get(attributeName);
    MappingAccessor mappingAccessor=embeddableDescriptor.getMappingAccessor(attributeName);
    String colName=attributeOverride.getColumn().getName();
    if (colName == null || colName.isEmpty()) {
      String prevName=mappingAccessor.getDefaultAttributeName();
      attributeOverride.getColumn().setName(prevName);
    }
    if (mappingAccessor == null) {
      throw ValidationException.embeddableAttributeOverrideNotFound(embeddableDescriptor.getJavaClass(),attributeName,getJavaClass(),getAttributeName());
    }
 else     if (!mappingAccessor.isBasic()) {
      throw ValidationException.invalidEmbeddableAttributeForAttributeOverride(embeddableDescriptor.getJavaClass(),attributeName,getJavaClass(),getAttributeName());
    }
 else {
      addFieldNameTranslation(aggregateObjectMapping,attributeName,attributeOverride.getColumn().getDatabaseField(),mappingAccessor);
    }
  }
}
Program: 63526
Project: 63526
Buggy source:
public Object createEntityListenerAndInjectDependancies(Class entityListenerClass) throws NamingException {
  AnnotatedType<Object> aType=beanManager.createAnnotatedType(entityListenerClass);
  InjectionTarget<Object> injectionTarget=beanManager.<Object>createInjectionTarget(aType);
  Object entityListener=injectionTarget.produce(beanManager.<Object>createCreationalContext(null));
synchronized (injectionTargets) {
    injectionTargets.put(entityListener,injectionTarget);
  }
  injectionTarget.postConstruct(entityListener);
  creationalContext=beanManager.<Object>createCreationalContext(null);
  injectionTarget.inject(entityListener,creationalContext);
  return entityListener;
}

Fixed version (ground truth):
public Object createEntityListenerAndInjectDependancies(Class entityListenerClass) throws NamingException {
  AnnotatedType<Object> aType=beanManager.createAnnotatedType(entityListenerClass);
  InjectionTarget<Object> injectionTarget=beanManager.<Object>createInjectionTarget(aType);
  Object entityListener=injectionTarget.produce(beanManager.<Object>createCreationalContext(null));
synchronized (injectionTargets) {
    injectionTargets.put(entityListener,injectionTarget);
  }
  creationalContext=beanManager.<Object>createCreationalContext(null);
  injectionTarget.inject(entityListener,creationalContext);
  injectionTarget.postConstruct(entityListener);
  return entityListener;
}
Program: 63527
Project: 63527
Buggy source:
/** 
 * INTERNAL: Traverse the object to find references to objects not registered in this unit of work. Any unregistered new objects found will be persisted or an error will be thrown depending on the mapping's cascade persist. References to deleted objects will also currently cause them to be undeleted.
 */
public void discoverUnregisteredNewObjects(Map clones,Map newObjects,Map unregisteredExistingObjects,Map visitedObjects){
  if (this.discoverUnregisteredNewObjectsWithoutPersist) {
    super.discoverUnregisteredNewObjects(clones,newObjects,unregisteredExistingObjects,visitedObjects);
  }
 else {
    Set<Object> cascadePersistErrors=new HashSet<Object>();
    for (Iterator clonesEnum=clones.keySet().iterator(); clonesEnum.hasNext(); ) {
      discoverAndPersistUnregisteredNewObjects(clonesEnum.next(),false,newObjects,unregisteredExistingObjects,visitedObjects,cascadePersistErrors);
    }
    if (!cascadePersistErrors.isEmpty()) {
      throw new IllegalStateException(ExceptionLocalization.buildMessage("String_Node_Str",cascadePersistErrors.toArray()));
    }
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Traverse the object to find references to objects not registered in this unit of work. Any unregistered new objects found will be persisted or an error will be thrown depending on the mapping's cascade persist. References to deleted objects will also currently cause them to be undeleted.
 */
public void discoverUnregisteredNewObjects(Map clones,Map newObjects,Map unregisteredExistingObjects,Map visitedObjects){
  if (this.discoverUnregisteredNewObjectsWithoutPersist) {
    super.discoverUnregisteredNewObjects(clones,newObjects,unregisteredExistingObjects,visitedObjects);
  }
 else {
    Set<Object> cascadePersistErrors=new IdentityHashSet();
    for (Iterator clonesEnum=clones.keySet().iterator(); clonesEnum.hasNext(); ) {
      discoverAndPersistUnregisteredNewObjects(clonesEnum.next(),false,newObjects,unregisteredExistingObjects,visitedObjects,cascadePersistErrors);
    }
    if (!cascadePersistErrors.isEmpty()) {
      throw new IllegalStateException(ExceptionLocalization.buildMessage("String_Node_Str",cascadePersistErrors.toArray()));
    }
  }
}
Program: 63529
Project: 63529
Buggy source:
/** 
 * INTERNAL: Allow the inheritance properties of the descriptor to be initialized. The descriptor's parent must first be initialized.
 */
public void initializeFromParent(CachePolicy parentPolicy,ClassDescriptor descriptor,ClassDescriptor descriptorDescriptor,AbstractSession session) throws DescriptorException {
  if (!parentPolicy.isSharedIsolation()) {
    if (!isIsolated() && (getCacheIsolation() != parentPolicy.getCacheIsolation())) {
      session.log(SessionLog.WARNING,SessionLog.METADATA,"String_Node_Str",new Object[]{descriptorDescriptor.getAlias(),parentPolicy.getCacheIsolation(),descriptor.getAlias(),getCacheIsolation()});
      setCacheIsolation(parentPolicy.getCacheIsolation());
    }
  }
  for (  CacheIndex index : parentPolicy.getCacheIndexes().values()) {
    addCacheIndex(index);
  }
  if ((getDatabaseChangeNotificationType() == null) && (parentPolicy.getDatabaseChangeNotificationType() != null)) {
    setDatabaseChangeNotificationType(parentPolicy.getDatabaseChangeNotificationType());
  }
  if ((getCacheSynchronizationType() == UNDEFINED_OBJECT_CHANGE_BEHAVIOR) && (parentPolicy.getCacheSynchronizationType() != UNDEFINED_OBJECT_CHANGE_BEHAVIOR)) {
    setCacheSynchronizationType(parentPolicy.getCacheSynchronizationType());
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Allow the inheritance properties of the descriptor to be initialized. The descriptor's parent must first be initialized.
 */
public void initializeFromParent(CachePolicy parentPolicy,ClassDescriptor descriptor,ClassDescriptor descriptorDescriptor,AbstractSession session) throws DescriptorException {
  if (!parentPolicy.isSharedIsolation()) {
    boolean copyParrent=cacheable == null || cacheable == false;
    if (!isIsolated() && (getCacheIsolation() != parentPolicy.getCacheIsolation()) && copyParrent) {
      session.log(SessionLog.WARNING,SessionLog.METADATA,"String_Node_Str",new Object[]{descriptorDescriptor.getAlias(),parentPolicy.getCacheIsolation(),descriptor.getAlias(),getCacheIsolation()});
      setCacheIsolation(parentPolicy.getCacheIsolation());
    }
  }
  for (  CacheIndex index : parentPolicy.getCacheIndexes().values()) {
    addCacheIndex(index);
  }
  if ((getDatabaseChangeNotificationType() == null) && (parentPolicy.getDatabaseChangeNotificationType() != null)) {
    setDatabaseChangeNotificationType(parentPolicy.getDatabaseChangeNotificationType());
  }
  if ((getCacheSynchronizationType() == UNDEFINED_OBJECT_CHANGE_BEHAVIOR) && (parentPolicy.getCacheSynchronizationType() != UNDEFINED_OBJECT_CHANGE_BEHAVIOR)) {
    setCacheSynchronizationType(parentPolicy.getCacheSynchronizationType());
  }
}
Program: 63530
Project: 63530
Buggy source:
public static Test suite(){
  TestSuite suite=new TestSuite();
  suite.setName("String_Node_Str");
  if (!JUnitTestCase.isJPA10()) {
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
  }
  return suite;
}

Fixed version (ground truth):
public static Test suite(){
  TestSuite suite=new TestSuite();
  suite.setName("String_Node_Str");
  if (!JUnitTestCase.isJPA10()) {
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
  }
  return suite;
}
Program: 63531
Project: 63531
Buggy source:
/** 
 * INTERNAL: Set the cacheable value of this descriptor.
 */
public void setCacheable(Boolean cacheable){
  m_cacheable=cacheable;
}

Fixed version (ground truth):
/** 
 * INTERNAL: Set entity @Cacheable annotation value.
 * @param cacheable Entity @Cacheable annotation value. This value refersto current class only and does not contain inherited value from parent classes.
 */
public void setCacheable(Boolean cacheable){
  m_cacheable=cacheable;
}
Program: 63532
Project: 63532
Buggy source:
/** 
 * INTERNAL: Process a caching metadata for this entity accessor logging ignore warnings where necessary.
 */
@Override protected void processCaching(){
  if (getProject().isSharedCacheModeAll()) {
    if (getDescriptor().isCacheableFalse()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_FALSE,getJavaClass());
    }
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeNone()) {
    if (getDescriptor().isCacheableTrue()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_TRUE,getJavaClass());
    }
    getDescriptor().useNoCache();
  }
 else   if (getProject().isSharedCacheModeEnableSelective()) {
    if (!getDescriptor().isCacheableTrue()) {
      getDescriptor().useNoCache();
    }
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeDisableSelective() || getProject().isSharedCacheModeUnspecified()) {
    if (getDescriptor().isCacheableFalse()) {
      getDescriptor().useNoCache();
    }
    processCachingMetadata();
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Process a caching metadata for this entity accessor logging ignore warnings where necessary.
 */
@Override protected void processCaching(){
  if (getProject().isSharedCacheModeAll()) {
    if (getDescriptor().isCacheableFalse()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_FALSE,getJavaClass());
    }
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeNone()) {
    if (getDescriptor().isCacheableTrue()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_TRUE,getJavaClass());
    }
    getDescriptor().useNoCache();
  }
 else   if (getProject().isSharedCacheModeEnableSelective()) {
    if (!getDescriptor().isCacheableTrue()) {
      getDescriptor().useNoCache();
    }
    getDescriptor().setCacheableInDescriptor();
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeDisableSelective() || getProject().isSharedCacheModeUnspecified()) {
    if (getDescriptor().isCacheableFalse()) {
      getDescriptor().useNoCache();
    }
    getDescriptor().setCacheableInDescriptor();
    processCachingMetadata();
  }
}
Program: 63533
Project: 63533
Buggy source:
public EntityListenerInjectionManagerImpl(Object beanManager) throws NamingException {
  if (beanManager != null) {
    this.beanManager=(BeanManager)beanManager;
  }
 else {
    Context context=new InitialContext();
    beanManager=(BeanManager)context.lookup("String_Node_Str");
  }
  injectionTargets=new HashMap<Object,InjectionTarget<Object>>();
}

Fixed version (ground truth):
public EntityListenerInjectionManagerImpl(Object beanManagerInstance) throws NamingException {
  if (beanManagerInstance == null) {
    Context context=new InitialContext();
    beanManagerInstance=context.lookup("String_Node_Str");
  }
  beanManager=(BeanManager)beanManagerInstance;
  injectionTargets=new HashMap<Object,InjectionTarget<Object>>();
}
Program: 63534
Project: 63534
Buggy source:
public DatabaseField buildField(DatabaseField field,DatabaseTable relationTable){
  DatabaseField builtField=getObjectBuilder().getFieldsMap().get(field);
  if (builtField == null) {
    builtField=field;
    DatabaseTable table;
    if (relationTable != null && field.hasTableName() && field.getTableName().equals(relationTable.getName())) {
      table=relationTable;
    }
 else     if (field.hasTableName()) {
      table=getTable(field.getTableName());
    }
 else {
      table=getDefaultTable();
    }
    field.setTable(table);
    getObjectBuilder().getFieldsMap().put(builtField,builtField);
  }
  return builtField;
}

Fixed version (ground truth):
public DatabaseField buildField(DatabaseField field,DatabaseTable relationTable){
  DatabaseField builtField=getObjectBuilder().getFieldsMap().get(field);
  if (builtField == null) {
    builtField=field;
    DatabaseTable table;
    if (relationTable != null && field.hasTableName() && field.getTableName().equals(relationTable.getName())) {
      table=relationTable;
    }
 else     if (relationTable != null && !field.hasTableName()) {
      table=relationTable;
    }
 else     if (field.hasTableName()) {
      table=getTable(field.getTableName());
    }
 else {
      table=getDefaultTable();
    }
    field.setTable(table);
    getObjectBuilder().getFieldsMap().put(builtField,builtField);
  }
  return builtField;
}
Program: 63535
Project: 63535
Buggy source:
public RelationshipsTableManager(){
  setName("String_Node_Str");
  addTableDefinition(buildCMP3_CUSTOMERTable());
  addTableDefinition(buildCMP3_ITEMTable());
  addTableDefinition(buildCMP3_ISOLATEDITEMTable());
  addTableDefinition(buildCMP3_ORDERTable());
  addTableDefinition(buildORDERCARDTable());
  addTableDefinition(buildORDERLABELTable());
  addTableDefinition(buildAUDITORTable());
  addTableDefinition(buildORDER_AUDITORTable());
  addTableDefinition(buildORDER_ORDERCARDTable());
  addTableDefinition(buildORDER_ORDERLABELTable());
  addTableDefinition(buildCMP3_SALESPERSONTable());
  addTableDefinition(buildCUSTOMER_CUSTOMERTable());
  addTableDefinition(buildCUSTOMER_CUSTOMER2Table());
  addTableDefinition(buildCMP3_ENTITYATable());
  addTableDefinition(buildCMP3_ENTITYBTable());
  addTableDefinition(buildCMP3_ENTITYA_ENTITYBTable());
  addTableDefinition(buildCMP3_ENTITYCTable());
  addTableDefinition(buildCMP3_ENTITYDTable());
  addTableDefinition(buildCMP3_UNIDIR_ENTITYC_ENTITYDTable());
  addTableDefinition(buildMATTELTable());
  addTableDefinition(buildLEGOTable());
  addTableDefinition(buildMEGABRANDSTable());
  addTableDefinition(buildNAMCOTable());
  addTableDefinition(buildServiceCallTable());
  addTableDefinition(buildCustomerServiceRepTable());
  addTableDefinition(buildCustRepTable());
}

Fixed version (ground truth):
public RelationshipsTableManager(){
  setName("String_Node_Str");
  addTableDefinition(buildCMP3_CUSTOMERTable());
  addTableDefinition(buildCMP3_ITEMTable());
  addTableDefinition(buildCMP3_ISOLATEDITEMTable());
  addTableDefinition(buildCMP3_ORDERTable());
  addTableDefinition(buildORDERCARDTable());
  addTableDefinition(buildORDERLABELTable());
  addTableDefinition(buildAUDITORTable());
  addTableDefinition(buildORDER_AUDITORTable());
  addTableDefinition(buildORDER_ORDERCARDTable());
  addTableDefinition(buildORDER_ORDERLABELTable());
  addTableDefinition(buildCMP3_SALESPERSONTable());
  addTableDefinition(buildCUSTOMER_CUSTOMERTable());
  addTableDefinition(buildCUSTOMER_CUSTOMER2Table());
  addTableDefinition(buildCMP3_ENTITYATable());
  addTableDefinition(buildCMP3_ENTITYBTable());
  addTableDefinition(buildCMP3_ENTITYA_ENTITYBTable());
  addTableDefinition(buildCMP3_ENTITYCTable());
  addTableDefinition(buildCMP3_ENTITYDTable());
  addTableDefinition(buildCMP3_UNIDIR_ENTITYC_ENTITYDTable());
  addTableDefinition(buildMATTELTable());
  addTableDefinition(buildLEGOTable());
  addTableDefinition(buildMEGABRANDSTable());
  addTableDefinition(buildNAMCOTable());
  addTableDefinition(buildServiceCallTable());
  addTableDefinition(buildCustomerServiceRepTable());
  addTableDefinition(buildCustRepTable());
  addTableDefinition(buildMtoMEntityATable());
  addTableDefinition(buildMtoMEntityBTable());
  addTableDefinition(buildMtoMEntityJoinTable());
  addTableDefinition(buildMtoMEntityDefaultJoinTable());
}
Program: 63537
Project: 63537
Buggy source:
/** 
 * INTERNAL: Allow the inheritance properties of the descriptor to be initialized. The descriptor's parent must first be initialized.
 */
public void initializeFromParent(CachePolicy parentPolicy,ClassDescriptor descriptor,ClassDescriptor descriptorDescriptor,AbstractSession session) throws DescriptorException {
  if (!parentPolicy.isSharedIsolation()) {
    boolean copyParrent=cacheable == null || cacheable == false;
    if (!isIsolated() && (getCacheIsolation() != parentPolicy.getCacheIsolation()) && copyParrent) {
      session.log(SessionLog.WARNING,SessionLog.METADATA,"String_Node_Str",new Object[]{descriptorDescriptor.getAlias(),parentPolicy.getCacheIsolation(),descriptor.getAlias(),getCacheIsolation()});
      setCacheIsolation(parentPolicy.getCacheIsolation());
    }
  }
  for (  CacheIndex index : parentPolicy.getCacheIndexes().values()) {
    addCacheIndex(index);
  }
  if ((getDatabaseChangeNotificationType() == null) && (parentPolicy.getDatabaseChangeNotificationType() != null)) {
    setDatabaseChangeNotificationType(parentPolicy.getDatabaseChangeNotificationType());
  }
  if ((getCacheSynchronizationType() == UNDEFINED_OBJECT_CHANGE_BEHAVIOR) && (parentPolicy.getCacheSynchronizationType() != UNDEFINED_OBJECT_CHANGE_BEHAVIOR)) {
    setCacheSynchronizationType(parentPolicy.getCacheSynchronizationType());
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Allow the inheritance properties of the descriptor to be initialized. The descriptor's parent must first be initialized.
 */
public void initializeFromParent(CachePolicy parentPolicy,ClassDescriptor descriptor,ClassDescriptor descriptorDescriptor,AbstractSession session) throws DescriptorException {
  if (!parentPolicy.isSharedIsolation()) {
    if (!isIsolated() && (getCacheIsolation() != parentPolicy.getCacheIsolation())) {
      session.log(SessionLog.WARNING,SessionLog.METADATA,"String_Node_Str",new Object[]{descriptorDescriptor.getAlias(),parentPolicy.getCacheIsolation(),descriptor.getAlias(),getCacheIsolation()});
      setCacheIsolation(parentPolicy.getCacheIsolation());
    }
  }
  for (  CacheIndex index : parentPolicy.getCacheIndexes().values()) {
    addCacheIndex(index);
  }
  if ((getDatabaseChangeNotificationType() == null) && (parentPolicy.getDatabaseChangeNotificationType() != null)) {
    setDatabaseChangeNotificationType(parentPolicy.getDatabaseChangeNotificationType());
  }
  if ((getCacheSynchronizationType() == UNDEFINED_OBJECT_CHANGE_BEHAVIOR) && (parentPolicy.getCacheSynchronizationType() != UNDEFINED_OBJECT_CHANGE_BEHAVIOR)) {
    setCacheSynchronizationType(parentPolicy.getCacheSynchronizationType());
  }
}
Program: 63538
Project: 63538
Buggy source:
public static Test suite(){
  TestSuite suite=new TestSuite();
  suite.setName("String_Node_Str");
  if (!JUnitTestCase.isJPA10()) {
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
  }
  return suite;
}

Fixed version (ground truth):
public static Test suite(){
  TestSuite suite=new TestSuite();
  suite.setName("String_Node_Str");
  if (!JUnitTestCase.isJPA10()) {
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
    suite.addTest(new CacheableModelJunitTestEnableSelective("String_Node_Str"));
  }
  return suite;
}
Program: 63539
Project: 63539
Buggy source:
/** 
 * INTERNAL: Set entity @Cacheable annotation value.
 * @param cacheable Entity @Cacheable annotation value. This value refersto current class only and does not contain inherited value from parent classes.
 */
public void setCacheable(Boolean cacheable){
  m_cacheable=cacheable;
}

Fixed version (ground truth):
/** 
 * INTERNAL: Set the cacheable value of this descriptor.
 */
public void setCacheable(Boolean cacheable){
  m_cacheable=cacheable;
}
Program: 63540
Project: 63540
Buggy source:
/** 
 * INTERNAL: Process a caching metadata for this entity accessor logging ignore warnings where necessary.
 */
@Override protected void processCaching(){
  if (getProject().isSharedCacheModeAll()) {
    if (getDescriptor().isCacheableFalse()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_FALSE,getJavaClass());
    }
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeNone()) {
    if (getDescriptor().isCacheableTrue()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_TRUE,getJavaClass());
    }
    getDescriptor().useNoCache();
  }
 else   if (getProject().isSharedCacheModeEnableSelective()) {
    if (!getDescriptor().isCacheableTrue()) {
      getDescriptor().useNoCache();
    }
    getDescriptor().setCacheableInDescriptor();
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeDisableSelective() || getProject().isSharedCacheModeUnspecified()) {
    if (getDescriptor().isCacheableFalse()) {
      getDescriptor().useNoCache();
    }
    getDescriptor().setCacheableInDescriptor();
    processCachingMetadata();
  }
}

Fixed version (ground truth):
/** 
 * INTERNAL: Process a caching metadata for this entity accessor logging ignore warnings where necessary.
 */
@Override protected void processCaching(){
  if (getProject().isSharedCacheModeAll()) {
    if (getDescriptor().isCacheableFalse()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_FALSE,getJavaClass());
    }
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeNone()) {
    if (getDescriptor().isCacheableTrue()) {
      getLogger().logConfigMessage(MetadataLogger.IGNORE_CACHEABLE_TRUE,getJavaClass());
    }
    getDescriptor().useNoCache();
  }
 else   if (getProject().isSharedCacheModeEnableSelective()) {
    if (!getDescriptor().isCacheableTrue()) {
      getDescriptor().useNoCache();
    }
    processCachingMetadata();
  }
 else   if (getProject().isSharedCacheModeDisableSelective() || getProject().isSharedCacheModeUnspecified()) {
    if (getDescriptor().isCacheableFalse()) {
      getDescriptor().useNoCache();
    }
    processCachingMetadata();
  }
}