Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.81 KB | None | 0 0
  1. private boolean checkDatabaseHeader() {
  2.         logger.finer("Checking database");
  3.         final File f = new File(configpath + "database.script");
  4.         if (!f.exists()) return true;
  5.         boolean databaseok = true;
  6.  
  7.         FileInputStream fis = null;
  8.         BufferedReader in = null;
  9.         try {
  10.             fis = new FileInputStream(f);
  11.             in = new BufferedReader(new InputStreamReader(fis));
  12.             String line = "";
  13.             int counter = 0;
  14.  
  15.             main: while (counter < 7) {
  16.                 line = in.readLine();
  17.                 if (line == null) {
  18.                     databaseok = false;
  19.                     break main;
  20.                 }
  21.                 switch (counter) {
  22.                 case 0:
  23.                     if (!line.equals("CREATE SCHEMA PUBLIC AUTHORIZATION DBA")) {
  24.                         databaseok = false;
  25.                     }
  26.                     break;
  27.                 case 1:
  28.                     if (!line.equals("CREATE MEMORY TABLE CONFIG(NAME VARCHAR(256),OBJ OBJECT)")) {
  29.                         databaseok = false;
  30.                     }
  31.                     break;
  32.                 case 2:
  33.                     if (!line.equals("CREATE MEMORY TABLE LINKS(NAME VARCHAR(256),OBJ OBJECT)")) {
  34.                         databaseok = false;
  35.                     }
  36.                     break;
  37.                 case 3:
  38.                     if (!line.equals("CREATE USER SA PASSWORD \"\"")) {
  39.                         databaseok = false;
  40.                     }
  41.                     break;
  42.                 case 4:
  43.                     if (!line.equals("GRANT DBA TO SA")) {
  44.                         databaseok = false;
  45.                     }
  46.                     break;
  47.                 case 5:
  48.                     if (!line.equals("SET WRITE_DELAY 10")) {
  49.                         databaseok = false;
  50.                     }
  51.                     break;
  52.                 case 6:
  53.                     if (!line.equals("SET SCHEMA PUBLIC")) {
  54.                         databaseok = false;
  55.                     }
  56.                     break;
  57.                 }
  58.                 counter++;
  59.             }
  60.  
  61.             while (((line = in.readLine()) != null)) {
  62.                 if (!line.matches("INSERT INTO .*? VALUES\\('.*?','.*?'\\)")) {
  63.                     databaseok = false;
  64.                     break;
  65.                 }
  66.             }
  67.  
  68.         } catch (final FileNotFoundException e) {
  69.             databaseok = false;
  70.         } catch (final IOException e) {
  71.             databaseok = false;
  72.  
  73.         } finally {
  74.             try {
  75.                 in.close();
  76.  
  77.             } catch (final IOException e1) {
  78.             }
  79.             try {
  80.  
  81.                 fis.close();
  82.             } catch (final IOException e1) {
  83.             }
  84.         }
  85.         return databaseok;
  86.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement