func (mcw *MergeConflictsWrapper) addConflicts(conflicts map[string]merger.MergeConflict) {
	if mcw.conflicts == nil {
		mcw.conflicts = make(map[string]merger.MergeConflict, len(conflicts))
	}
	if mcw.unsolvedConflicts == nil {
		mcw.unsolvedConflicts = make(map[string]bool, len(conflicts))
	}
	for key, value := range conflicts {
		if _, exists := mcw.conflicts[key]; !exists {
			mcw.conflicts[key] = value
			mcw.unsolvedConflicts[key] = true
		}
	}
}
addConflicts adds the given conflicts to the MergeConflictWrapper
and makes sure that the keys are added to conflictsKeys. This
makes sure, that the order stays the same. If the conflict already
exists, it is skipped.
package gomobile
import (
	"encoding/json"
	"fmt"
	"github.com/pkg/errors"
	"github.com/AndreasSko/go-jwlm/merger"
	"github.com/AndreasSko/go-jwlm/model"
)
type MergeConflictError struct {
	Err string
}
func (e MergeConflictError) Error() string {
	return fmt.Sprintf("There were conflicts while trying to merge %s", e.Err)
}
type MergeConflictsWrapper struct {
	DBWrapper         *DatabaseWrapper
	conflicts         map[string]merger.MergeConflict
	unsolvedConflicts map[string]bool
	solutions         map[string]merger.MergeSolution
}
type MergeConflict struct {
	Key   string
	Left  string
	Right string
}
type modelRelatedTuple struct {
	Model   model.Model   `json:"model"`
	Related model.Related `json:"related"`
}
func (mcw *MergeConflictsWrapper) InitDBWrapper(dbw *DatabaseWrapper) {
	mcw.DBWrapper = dbw
}