Program: 13193
Project: 13193
Buggy source:
/** 
 * Create an instance of a mapping between source and target
 * @param service The associated synchronization service
 * @param config The configuration for this mapping
 * @throws JsonValueException if there is an issue initializing based on the configuration.
 */
public ObjectMapping(SynchronizationService service,JsonValue config) throws JsonValueException {
  this.service=service;
  this.config=config;
  name=config.get("String_Node_Str").required().asString();
  linkTypeName=config.get("String_Node_Str").defaultTo(name).asString();
  sourceObjectSet=config.get("String_Node_Str").required().asString();
  targetObjectSet=config.get("String_Node_Str").required().asString();
  sourceIdsCaseSensitive=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  targetIdsCaseSensitive=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  validSource=Scripts.newInstance(config.get("String_Node_Str"));
  validTarget=Scripts.newInstance(config.get("String_Node_Str"));
  sourceCondition=new Condition(config.get("String_Node_Str"));
  correlation=new Correlation(config);
  JsonValue linkQualifiersValue=config.get("String_Node_Str");
  if (linkQualifiersValue.isNull()) {
    linkQualifiersList.add(Link.DEFAULT_LINK_QUALIFIER);
  }
 else   if (linkQualifiersValue.isList() || linkQualifiersValue.isSet()) {
    linkQualifiersList.addAll(config.get("String_Node_Str").asSet(String.class));
  }
 else   if (linkQualifiersValue.isMap()) {
    linkQualifiersScript=Scripts.newInstance(linkQualifiersValue);
  }
 else {
    linkQualifiersValue.expect(List.class);
  }
  for (  JsonValue jv : config.get("String_Node_Str").expect(List.class)) {
    properties.add(new PropertyMapping(jv));
  }
  for (  JsonValue jv : config.get("String_Node_Str").expect(List.class)) {
    String situation=jv.get("String_Node_Str").asString();
    if (policies.containsKey(situation)) {
      List<Policy> policy=policies.get(situation);
      policy.add(new Policy(jv));
      continue;
    }
    List<Policy> policyArrayList=new ArrayList<Policy>();
    policies.put(situation,policyArrayList);
    policyArrayList.add(new Policy(jv));
  }
  defaultMapping=Scripts.newInstance(config.get("String_Node_Str").defaultTo(json(object(field(SourceUnit.ATTR_TYPE,"String_Node_Str"),field(SourceUnit.ATTR_NAME,"String_Node_Str")))));
  onCreateScript=Scripts.newInstance(config.get("String_Node_Str"));
  onUpdateScript=Scripts.newInstance(config.get("String_Node_Str"));
  onDeleteScript=Scripts.newInstance(config.get("String_Node_Str"));
  onLinkScript=Scripts.newInstance(config.get("String_Node_Str"));
  onUnlinkScript=Scripts.newInstance(config.get("String_Node_Str"));
  resultScript=Scripts.newInstance(config.get("String_Node_Str"));
  prefetchLinks=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  Integer confTaskThreads=config.get("String_Node_Str").asInteger();
  if (confTaskThreads != null) {
    taskThreads=confTaskThreads.intValue();
  }
  correlateEmptyTargetSet=config.get("String_Node_Str").defaultTo(Boolean.FALSE).asBoolean();
  syncEnabled=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  linkingEnabled=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  reconSourceQueryPaging=config.get("String_Node_Str").defaultTo(false).asBoolean();
  reconSourceQueryPageSize=config.get("String_Node_Str").defaultTo(reconSourceQueryPaging ? ReconFeeder.DEFAULT_FEED_SIZE : 0).asInteger();
  LOGGER.debug("String_Node_Str",name);
}

Fixed version (ground truth):
/** 
 * Create an instance of a mapping between source and target
 * @param service The associated synchronization service
 * @param config The configuration for this mapping
 * @throws JsonValueException if there is an issue initializing based on the configuration.
 */
public ObjectMapping(SynchronizationService service,JsonValue config) throws JsonValueException {
  this.service=service;
  this.config=config;
  name=config.get("String_Node_Str").required().asString();
  linkTypeName=config.get("String_Node_Str").defaultTo(name).asString();
  sourceObjectSet=config.get("String_Node_Str").required().asString();
  targetObjectSet=config.get("String_Node_Str").required().asString();
  sourceIdsCaseSensitive=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  targetIdsCaseSensitive=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  validSource=Scripts.newInstance(config.get("String_Node_Str"));
  validTarget=Scripts.newInstance(config.get("String_Node_Str"));
  sourceCondition=new Condition(config.get("String_Node_Str"));
  correlation=new Correlation(config);
  JsonValue linkQualifiersValue=config.get("String_Node_Str");
  if (linkQualifiersValue.isNull()) {
    linkQualifiersList.add(Link.DEFAULT_LINK_QUALIFIER);
  }
 else   if (linkQualifiersValue.isList() || linkQualifiersValue.isSet()) {
    linkQualifiersList.addAll(config.get("String_Node_Str").asSet(String.class));
  }
 else   if (linkQualifiersValue.isMap()) {
    linkQualifiersScript=Scripts.newInstance(linkQualifiersValue);
  }
 else {
    linkQualifiersValue.expect(List.class);
  }
  for (  JsonValue jv : config.get("String_Node_Str").expect(List.class)) {
    properties.add(new PropertyMapping(jv));
  }
  for (  JsonValue jv : config.get("String_Node_Str").expect(List.class)) {
    String situation=jv.get("String_Node_Str").asString();
    if (policies.containsKey(situation)) {
      List<Policy> policy=policies.get(situation);
      policy.add(new Policy(jv));
      continue;
    }
    List<Policy> policyArrayList=new ArrayList<Policy>();
    policies.put(situation,policyArrayList);
    policyArrayList.add(new Policy(jv));
  }
  defaultMapping=Scripts.newInstance(config.get("String_Node_Str").defaultTo(json(object(field(SourceUnit.ATTR_TYPE,"String_Node_Str"),field(SourceUnit.ATTR_NAME,"String_Node_Str")))));
  onCreateScript=Scripts.newInstance(config.get("String_Node_Str"));
  onUpdateScript=Scripts.newInstance(config.get("String_Node_Str"));
  onDeleteScript=Scripts.newInstance(config.get("String_Node_Str"));
  onLinkScript=Scripts.newInstance(config.get("String_Node_Str"));
  onUnlinkScript=Scripts.newInstance(config.get("String_Node_Str"));
  resultScript=Scripts.newInstance(config.get("String_Node_Str"));
  prefetchLinks=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  taskThreads=config.get("String_Node_Str").defaultTo(DEFAULT_TASK_THREADS).asInteger();
  feedSize=config.get("String_Node_Str").defaultTo(ReconFeeder.DEFAULT_FEED_SIZE).asInteger();
  correlateEmptyTargetSet=config.get("String_Node_Str").defaultTo(Boolean.FALSE).asBoolean();
  syncEnabled=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  linkingEnabled=config.get("String_Node_Str").defaultTo(Boolean.TRUE).asBoolean();
  reconSourceQueryPaging=config.get("String_Node_Str").defaultTo(false).asBoolean();
  reconSourceQueryPageSize=config.get("String_Node_Str").defaultTo(reconSourceQueryPaging ? ReconFeeder.DEFAULT_FEED_SIZE : 0).asInteger();
  LOGGER.debug("String_Node_Str",name);
}