public void insert(EventModel event) throws SQLException {
    if (this.database == null || !this.database.isOpen()) {
      try {
        this.database = (SQLiteDatabase) dataManager.getDatabaseHelper().openDatabaseConnection();
      } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
    }
    // String sql = "INSERT INTO events
    // (model_id,description,synchronous,implementation_type_id,entity_id) "
    //        + " VALUES (?,?,?,?,?);";
    event.setModelId(event.getId());
    ContentValues values = new ContentValues();
    values.put("model_id", event.getId());
    values.put("description", event.getDescription());
    values.put("synchronous", event.isSynchronous());
    values.put("implementation_type_id", event.getImplementation().getId());
    values.put("entity_id", event.getEntity().getId());

    event.setId((int) (long) this.database.insertOrThrow("events", null, values));

    if (DeveloperSettings.SHOW_DAO_SQL) {
      Log.d(
          "SQL_DEBUG",
          "INSERT INTO events (id,model_id,description,synchronous,implementation_type_id,entity_id) "
              + " VALUES ("
              + event.getId()
              + ","
              + event.getModelId()
              + ",'"
              + event.getDescription()
              + "',"
              + event.isSynchronous()
              + ","
              + event.getImplementation().getId()
              + ","
              + event.getEntity().getId()
              + ");");
    }
  }