Browse Source

allow subclasses to override BaseMain exit behavior

master
Jonathan Cobb 4 years ago
parent
commit
81913bcc9d
1 changed files with 3 additions and 1 deletions
  1. +3
    -1
      src/main/java/org/cobbzilla/util/main/BaseMain.java

+ 3
- 1
src/main/java/org/cobbzilla/util/main/BaseMain.java View File

@@ -40,6 +40,8 @@ public abstract class BaseMain<OPT extends BaseMainOptions> {
protected void preRun() {} protected void preRun() {}
protected void postRun() {} protected void postRun() {}


protected boolean exit() { return true; }

public static void main(Class<? extends BaseMain> clazz, String[] args) { public static void main(Class<? extends BaseMain> clazz, String[] args) {
BaseMain m = null; BaseMain m = null;
int returnValue = 0; int returnValue = 0;
@@ -63,7 +65,7 @@ public abstract class BaseMain<OPT extends BaseMainOptions> {
} finally { } finally {
if (m != null) m.cleanup(); if (m != null) m.cleanup();
} }
System.exit(returnValue);
if (m == null || m.exit()) System.exit(returnValue);
} }


public void cleanup () {} public void cleanup () {}


Loading…
Cancel
Save