public String validationForBifurcation(final PropertyImpl propertyModel,final BasicProperty basicProperty,final String reason){
  final List<PropertyStatusValues> children=propertyStatusValuesDAO.getPropertyStatusValuesByReferenceBasicProperty(basicProperty);
  final Boolean parentBifurcated=isPropertyBifurcated(basicProperty);
  final Boolean childrenCreated=!children.isEmpty();
  String errorMsg=null;
  if (PROPERTY_MODIFY_REASON_BIFURCATE.equalsIgnoreCase(reason)) {
    if (parentBifurcated && !childrenCreated)     errorMsg="error.child.not.created";
  }
 else   if (PROPERTY_MODIFY_REASON_ADD_OR_ALTER.equalsIgnoreCase(reason)) {
    if (!childrenCreated) {
      if (parentBifurcated)       errorMsg="error.child.not.created";
    }
 else     if (!parentBifurcated)     errorMsg="error.parent.not.bifurcated";
  }
 else   if (PROP_CREATE_RSN_BIFUR.equals(reason))   if (parentBifurcated)   getLatestHistoryProperty(basicProperty.getUpicNo());
 else   basicProperty.getActiveProperty();
  return errorMsg;
}

public String validationForBifurcation ( final PropertyImpl propertyModel , final BasicProperty basicProperty , final String reason ) { final List < PropertyStatusValues > children = propertyStatusValuesDAO . getPropertyStatusValuesByReferenceBasicProperty ( basicProperty ) ; final Boolean parentBifurcated = isPropertyBifurcated ( basicProperty ) ; final Boolean childrenCreated = ! children . isEmpty ( ) ; String errorMsg = null ; if ( PROPERTY_MODIFY_REASON_BIFURCATE . equalsIgnoreCase ( reason ) ) { if ( parentBifurcated && ! childrenCreated ) errorMsg = "error.child.not.created" ; } else if ( PROPERTY_MODIFY_REASON_ADD_OR_ALTER . equalsIgnoreCase ( reason ) ) { if ( ! childrenCreated ) { if ( parentBifurcated ) errorMsg = "error.child.not.created" ; } else if ( ! parentBifurcated ) errorMsg = "error.parent.not.bifurcated" ; } else if ( PROP_CREATE_RSN_BIFUR . equals ( reason ) ) if ( parentBifurcated ) getLatestHistoryProperty ( basicProperty . getUpicNo ( ) ) ; else basicProperty . getActiveProperty ( ) ; return errorMsg ; }
method to validate bifurcation of property either using create assessment or alter assessment
