StrategyRecursive.java

  1. /*
  2.  * Copyright (C) 2012, Research In Motion Limited and others
  3.  *
  4.  * This program and the accompanying materials are made available under the
  5.  * terms of the Eclipse Distribution License v. 1.0 which is available at
  6.  * https://www.eclipse.org/org/documents/edl-v10.php.
  7.  *
  8.  * SPDX-License-Identifier: BSD-3-Clause
  9.  */

  10. package org.eclipse.jgit.merge;

  11. import org.eclipse.jgit.lib.Config;
  12. import org.eclipse.jgit.lib.ObjectInserter;
  13. import org.eclipse.jgit.lib.Repository;

  14. /**
  15.  * A three-way merge strategy performing a content-merge if necessary
  16.  *
  17.  * @since 3.0
  18.  */
  19. public class StrategyRecursive extends StrategyResolve {

  20.     /** {@inheritDoc} */
  21.     @Override
  22.     public ThreeWayMerger newMerger(Repository db) {
  23.         return new RecursiveMerger(db, false);
  24.     }

  25.     /** {@inheritDoc} */
  26.     @Override
  27.     public ThreeWayMerger newMerger(Repository db, boolean inCore) {
  28.         return new RecursiveMerger(db, inCore);
  29.     }

  30.     /** {@inheritDoc} */
  31.     @Override
  32.     public ThreeWayMerger newMerger(ObjectInserter inserter, Config config) {
  33.         return new RecursiveMerger(inserter, config);
  34.     }

  35.     /** {@inheritDoc} */
  36.     @Override
  37.     public String getName() {
  38.         return "recursive"; //$NON-NLS-1$
  39.     }
  40. }