Skip to main content
summaryrefslogtreecommitdiffstats
blob: 86bf27d3065b7442a04bc3b1b274ab62466bbb5d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/*******************************************************************************
 * Copyright (c) 2007, 2009 Oracle. All rights reserved.
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0, which accompanies this distribution
 * and is available at http://www.eclipse.org/legal/epl-v10.html.
 * 
 * Contributors:
 *     Oracle - initial API and implementation
 ******************************************************************************/
package org.eclipse.jpt.gen.internal;

public interface OverwriteConfirmer {
	/**
	 * Return whether the entity generator should overwrite the specified
	 * file.
	 */
	boolean overwrite(String className);


	final class Always implements OverwriteConfirmer {
		public static final OverwriteConfirmer INSTANCE = new Always();
		public static OverwriteConfirmer instance() {
			return INSTANCE;
		}
		// ensure single instance
		private Always() {
			super();
		}
		// everything will be overwritten
		public boolean overwrite(String arg0) {
			return true;
		}
		@Override
		public String toString() {
			return "OverwriteConfirmer.Always";  //$NON-NLS-1$
		}
	}


	final class Never implements OverwriteConfirmer {
		public static final OverwriteConfirmer INSTANCE = new Never();
		public static OverwriteConfirmer instance() {
			return INSTANCE;
		}
		// ensure single instance
		private Never() {
			super();
		}
		// nothing will be overwritten
		public boolean overwrite(String arg0) {
			return false;
		}
		@Override
		public String toString() {
			return "OverwriteConfirmer.Never";  //$NON-NLS-1$
		}
	}

}

Back to the top