test_class.declarator: TEST_UUID = "test_uuid"
test_class.modifier: private static final
test_class.original_string: private static final String TEST_UUID = "test_uuid";
test_class.type: String
test_class.var_name: TEST_UUID
test_class.declarator: TEST_VALUE = "test value"
test_class.modifier: private static final
test_class.original_string: private static final String TEST_VALUE = "test value";
test_class.type: String
test_class.var_name: TEST_VALUE
test_class.declarator: TEST_VALUE_2 = "test value2"
test_class.modifier: private static final
test_class.original_string: private static final String TEST_VALUE_2 = "test value2";
test_class.type: String
test_class.var_name: TEST_VALUE_2
test_class.declarator: VOIDED_KEY = "voided"
test_class.modifier: public static final
test_class.original_string: public static final String VOIDED_KEY = "voided";
test_class.type: String
test_class.var_name: VOIDED_KEY
test_class.declarator: abstractSynchronizationService
test_class.modifier: private
test_class.original_string: private AbstractSynchronizationService abstractSynchronizationService;
test_class.type: AbstractSynchronizationService
test_class.var_name: abstractSynchronizationService
test_class.file: api/src/test/java/org/openmrs/module/sync2/api/service/impl/AbstractSynchronizationServiceTest.java
test_class.identifier: AbstractSynchronizationServiceTest
test_case.body: @Test
  	public void determineActions_shouldReturnUPDATED() {
  		List<String> actual = abstractSynchronizationService.determineActions(
  				createPatientInstance(false),
  				createPatientInstance(false));
  		Assert.assertTrue(actual.contains(SyncConstants.ACTION_UPDATED));
  	}
test_case.class_method_signature: AbstractSynchronizationServiceTest.determineActions_shouldReturnUPDATED()
test_case.full_signature: @Test public void determineActions_shouldReturnUPDATED()
test_case.identifier: determineActions_shouldReturnUPDATED
test_case.invocations: determineActions createPatientInstance createPatientInstance assertTrue contains
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void determineActions_shouldReturnUPDATED()
focal_class.declarator: VOIDED_KEY = "voided"
focal_class.modifier: private static final
focal_class.original_string: private static final String VOIDED_KEY = "voided";
focal_class.type: String
focal_class.var_name: VOIDED_KEY
focal_class.declarator: syncClient = new SyncClient()
focal_class.modifier: protected
focal_class.original_string: protected SyncClient syncClient = new SyncClient();
focal_class.type: SyncClient
focal_class.var_name: syncClient
focal_class.declarator: conflictDetection
focal_class.modifier: @Autowired
      private
focal_class.original_string: @Autowired
      private ConflictDetection conflictDetection;
focal_class.type: ConflictDetection
focal_class.var_name: conflictDetection
focal_class.declarator: mergeConflictService
focal_class.modifier: @Autowired
      private
focal_class.original_string: @Autowired
      private MergeConflictService mergeConflictService;
focal_class.type: MergeConflictService
focal_class.var_name: mergeConflictService
focal_class.declarator: mergeConflictMapper
focal_class.modifier: @Autowired
      private
focal_class.original_string: @Autowired
      private MergeConflictMapper mergeConflictMapper;
focal_class.type: MergeConflictMapper
focal_class.var_name: mergeConflictMapper
focal_class.declarator: INITIAL_INFO_FORMAT = "%s category: %s, address: %s, action: %s"
focal_class.modifier: private static final
focal_class.original_string: private static final String INITIAL_INFO_FORMAT = "%s category: %s, address: %s, action: %s";
focal_class.type: String
focal_class.var_name: INITIAL_INFO_FORMAT
focal_class.file: api/src/main/java/org/openmrs/module/sync2/api/service/impl/AbstractSynchronizationService.java
focal_class.identifier: AbstractSynchronizationService
focal_class.class_method_signature: AbstractSynchronizationService.determineActionsBasingOnSyncType(Object localObj, Object parentObj)
focal_class.full_signature: protected abstract List<String> determineActionsBasingOnSyncType(Object localObj, Object parentObj)
focal_class.identifier: determineActionsBasingOnSyncType
focal_class.modifiers: protected abstract
focal_class.parameters: (Object localObj, Object parentObj)
focal_class.return: List<String>
focal_class.signature: List<String> determineActionsBasingOnSyncType(Object localObj, Object parentObj)
focal_class.class_method_signature: AbstractSynchronizationService.synchronizeObject(SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName, String uuid)
focal_class.full_signature: protected abstract AuditMessage synchronizeObject(SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName, String uuid)
focal_class.identifier: synchronizeObject
focal_class.modifiers: protected abstract
focal_class.parameters: (SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName, String uuid)
focal_class.return: AuditMessage
focal_class.signature: AuditMessage synchronizeObject(SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName, String uuid)
focal_class.class_method_signature: AbstractSynchronizationService.getOperation()
focal_class.full_signature: protected abstract SyncOperation getOperation()
focal_class.identifier: getOperation
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: SyncOperation
focal_class.signature: SyncOperation getOperation()
focal_class.class_method_signature: AbstractSynchronizationService.getBaseResourceUrl(Map<String, String> resourceLinks, String clientName)
focal_class.full_signature: protected abstract String getBaseResourceUrl(Map<String, String> resourceLinks, String clientName)
focal_class.identifier: getBaseResourceUrl
focal_class.modifiers: protected abstract
focal_class.parameters: (Map<String, String> resourceLinks, String clientName)
focal_class.return: String
focal_class.signature: String getBaseResourceUrl(Map<String, String> resourceLinks, String clientName)
focal_class.class_method_signature: AbstractSynchronizationService.getLogger()
focal_class.full_signature: protected abstract Logger getLogger()
focal_class.identifier: getLogger
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: Logger
focal_class.signature: Logger getLogger()
focal_class.class_method_signature: AbstractSynchronizationService.getFailedSynchronizationMessage()
focal_class.full_signature: protected abstract String getFailedSynchronizationMessage()
focal_class.identifier: getFailedSynchronizationMessage
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getFailedSynchronizationMessage()
focal_class.class_method_signature: AbstractSynchronizationService.initSynchronization(SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName)
focal_class.full_signature: protected AuditMessage initSynchronization(SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName)
focal_class.identifier: initSynchronization
focal_class.modifiers: protected
focal_class.parameters: (SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName)
focal_class.return: AuditMessage
focal_class.signature: AuditMessage initSynchronization(SyncCategory category, Map<String, String> resourceLinks,
              String action, String clientName)
focal_class.class_method_signature: AbstractSynchronizationService.successfulMessage(AuditMessage base, String dataSent)
focal_class.full_signature: protected AuditMessage successfulMessage(AuditMessage base, String dataSent)
focal_class.identifier: successfulMessage
focal_class.modifiers: protected
focal_class.parameters: (AuditMessage base, String dataSent)
focal_class.return: AuditMessage
focal_class.signature: AuditMessage successfulMessage(AuditMessage base, String dataSent)
focal_class.class_method_signature: AbstractSynchronizationService.failedMessage(AuditMessage base, Throwable e)
focal_class.full_signature: protected AuditMessage failedMessage(AuditMessage base, Throwable e)
focal_class.identifier: failedMessage
focal_class.modifiers: protected
focal_class.parameters: (AuditMessage base, Throwable e)
focal_class.return: AuditMessage
focal_class.signature: AuditMessage failedMessage(AuditMessage base, Throwable e)
focal_class.class_method_signature: AbstractSynchronizationService.synchronizeObject(SyncCategory category, String uuid)
focal_class.full_signature: protected List<AuditMessage> synchronizeObject(SyncCategory category, String uuid)
focal_class.identifier: synchronizeObject
focal_class.modifiers: protected
focal_class.parameters: (SyncCategory category, String uuid)
focal_class.return: List<AuditMessage>
focal_class.signature: List<AuditMessage> synchronizeObject(SyncCategory category, String uuid)
focal_class.class_method_signature: AbstractSynchronizationService.determineActions(Object objToUpdate, Object baseObj)
focal_class.full_signature: protected List<String> determineActions(Object objToUpdate, Object baseObj)
focal_class.identifier: determineActions
focal_class.modifiers: protected
focal_class.parameters: (Object objToUpdate, Object baseObj)
focal_class.return: List<String>
focal_class.signature: List<String> determineActions(Object objToUpdate, Object baseObj)
focal_class.class_method_signature: AbstractSynchronizationService.shouldSynchronize(SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.full_signature: protected boolean shouldSynchronize(SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.identifier: shouldSynchronize
focal_class.modifiers: protected
focal_class.parameters: (SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.return: boolean
focal_class.signature: boolean shouldSynchronize(SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.class_method_signature: AbstractSynchronizationService.isWrongCreateAction(SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.full_signature: private boolean isWrongCreateAction(SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.identifier: isWrongCreateAction
focal_class.modifiers: private
focal_class.parameters: (SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.return: boolean
focal_class.signature: boolean isWrongCreateAction(SimpleObject oldObject, SimpleObject newObject, String action)
focal_class.class_method_signature: AbstractSynchronizationService.isWrongDeleteAction(SimpleObject newObject, String action)
focal_class.full_signature: private boolean isWrongDeleteAction(SimpleObject newObject, String action)
focal_class.identifier: isWrongDeleteAction
focal_class.modifiers: private
focal_class.parameters: (SimpleObject newObject, String action)
focal_class.return: boolean
focal_class.signature: boolean isWrongDeleteAction(SimpleObject newObject, String action)
focal_class.class_method_signature: AbstractSynchronizationService.isWrongUpdateAction(SimpleObject oldObject, String action)
focal_class.full_signature: private boolean isWrongUpdateAction(SimpleObject oldObject, String action)
focal_class.identifier: isWrongUpdateAction
focal_class.modifiers: private
focal_class.parameters: (SimpleObject oldObject, String action)
focal_class.return: boolean
focal_class.signature: boolean isWrongUpdateAction(SimpleObject oldObject, String action)
focal_class.class_method_signature: AbstractSynchronizationService.isUpdateOnVoidedObject(SimpleObject object, String action)
focal_class.full_signature: private boolean isUpdateOnVoidedObject(SimpleObject object, String action)
focal_class.identifier: isUpdateOnVoidedObject
focal_class.modifiers: private
focal_class.parameters: (SimpleObject object, String action)
focal_class.return: boolean
focal_class.signature: boolean isUpdateOnVoidedObject(SimpleObject object, String action)
focal_class.class_method_signature: AbstractSynchronizationService.areDifferentObjects(SimpleObject oldObject, SimpleObject newObject)
focal_class.full_signature: private boolean areDifferentObjects(SimpleObject oldObject, SimpleObject newObject)
focal_class.identifier: areDifferentObjects
focal_class.modifiers: private
focal_class.parameters: (SimpleObject oldObject, SimpleObject newObject)
focal_class.return: boolean
focal_class.signature: boolean areDifferentObjects(SimpleObject oldObject, SimpleObject newObject)
focal_class.class_method_signature: AbstractSynchronizationService.detectAndResolveConflict(SyncObject oldObject, SyncObject newObject, AuditMessage auditMessage)
focal_class.full_signature: protected SyncObject detectAndResolveConflict(SyncObject oldObject, SyncObject newObject, AuditMessage auditMessage)
focal_class.identifier: detectAndResolveConflict
focal_class.modifiers: protected
focal_class.parameters: (SyncObject oldObject, SyncObject newObject, AuditMessage auditMessage)
focal_class.return: SyncObject
focal_class.signature: SyncObject detectAndResolveConflict(SyncObject oldObject, SyncObject newObject, AuditMessage auditMessage)
focal_class.class_method_signature: AbstractSynchronizationService.pullData(SyncCategory category, String action, String clientName, String uuid,
              String pullUrl, OpenMRSSyncInstance instance)
focal_class.full_signature: protected Object pullData(SyncCategory category, String action, String clientName, String uuid,
              String pullUrl, OpenMRSSyncInstance instance)
focal_class.identifier: pullData
focal_class.modifiers: protected
focal_class.parameters: (SyncCategory category, String action, String clientName, String uuid,
              String pullUrl, OpenMRSSyncInstance instance)
focal_class.return: Object
focal_class.signature: Object pullData(SyncCategory category, String action, String clientName, String uuid,
              String pullUrl, OpenMRSSyncInstance instance)
focal_class.class_method_signature: AbstractSynchronizationService.logInitialInfo(SyncCategory category, String action, Map<String, String> resourceLinks, String clientName)
focal_class.full_signature: private void logInitialInfo(SyncCategory category, String action, Map<String, String> resourceLinks, String clientName)
focal_class.identifier: logInitialInfo
focal_class.modifiers: private
focal_class.parameters: (SyncCategory category, String action, Map<String, String> resourceLinks, String clientName)
focal_class.return: void
focal_class.signature: void logInitialInfo(SyncCategory category, String action, Map<String, String> resourceLinks, String clientName)
focal_class.class_method_signature: AbstractSynchronizationService.prepareAuditMessage(SyncCategory category, String clientName,
              Map<String, String> resourceLinks, String action)
focal_class.full_signature: private AuditMessage prepareAuditMessage(SyncCategory category, String clientName,
              Map<String, String> resourceLinks, String action)
focal_class.identifier: prepareAuditMessage
focal_class.modifiers: private
focal_class.parameters: (SyncCategory category, String clientName,
              Map<String, String> resourceLinks, String action)
focal_class.return: AuditMessage
focal_class.signature: AuditMessage prepareAuditMessage(SyncCategory category, String clientName,
              Map<String, String> resourceLinks, String action)
focal_class.class_method_signature: AbstractSynchronizationService.includeUuidInResourceLinks(Map<String, String> resourceLinks, String uuid)
focal_class.full_signature: private Map<String, String> includeUuidInResourceLinks(Map<String, String> resourceLinks, String uuid)
focal_class.identifier: includeUuidInResourceLinks
focal_class.modifiers: private
focal_class.parameters: (Map<String, String> resourceLinks, String uuid)
focal_class.return: Map<String, String>
focal_class.signature: Map<String, String> includeUuidInResourceLinks(Map<String, String> resourceLinks, String uuid)
focal_class.class_method_signature: AbstractSynchronizationService.determineActions(SyncCategory category, String restUrl)
focal_class.full_signature: private List<String> determineActions(SyncCategory category, String restUrl)
focal_class.identifier: determineActions
focal_class.modifiers: private
focal_class.parameters: (SyncCategory category, String restUrl)
focal_class.return: List<String>
focal_class.signature: List<String> determineActions(SyncCategory category, String restUrl)
focal_method.body: protected List<String> determineActions(Object objToUpdate, Object baseObj) {
          List<String> result = new ArrayList<>();
          if (baseObj instanceof BaseOpenmrsData && ((BaseOpenmrsData) baseObj).isVoided()) {
              result.add(ACTION_VOIDED);
          }
          if (objToUpdate == null) {
              result.add(0, ACTION_CREATED);
          } else {
              result.add(0, ACTION_UPDATED);
          }
  
          return result;
      }
focal_method.class_method_signature: AbstractSynchronizationService.determineActions(Object objToUpdate, Object baseObj)
focal_method.full_signature: protected List<String> determineActions(Object objToUpdate, Object baseObj)
focal_method.identifier: determineActions
focal_method.invocations: isVoided add add add
focal_method.modifiers: protected
focal_method.parameters: (Object objToUpdate, Object baseObj)
focal_method.return: List<String>
focal_method.signature: List<String> determineActions(Object objToUpdate, Object baseObj)