1 package net.avcompris.commons3.dao; 2 3 import javax.annotation.Nullable; 4 5 public interface HealthCheckDb { 6 7 boolean isOk(); 8 9 @Nullable 10 String[] getErrors(); 11 12 @Nullable 13 RuntimeDbStatus getRuntimeDbStatus(); 14 15 interface RuntimeDbStatus { 16 17 boolean isOk(); 18 19 RuntimeDbTable[] getTables(); 20 } 21 22 interface RuntimeDbTable { 23 24 boolean isOk(); 25 26 String getRuntimeName(); 27 28 String getCompileName(); 29 30 boolean getExistsInRuntimeDb(); 31 32 @Nullable 33 RuntimeDbColumn[] getColumns(); 34 } 35 36 interface RuntimeDbColumn { 37 38 boolean isOk(); 39 40 String getName(); 41 42 @Nullable 43 String getRuntimeLiteral(); 44 45 @Nullable 46 String getCompileLiteral(); 47 } 48 }