case SetTypes.ALLOW_LITERALS: { session.getUser().checkAdmin(); int value = getIntValue(); if (value < 0 || value > 2) { throw DbException.getInvalidValueException("ALLOW_LITERALS", getIntValue()); addOrUpdateSetting(name, null, value); break; if (getIntValue() < 0) { throw DbException.getInvalidValueException("CACHE_SIZE", getIntValue()); database.setCacheSize(getIntValue()); addOrUpdateSetting(name, null, getIntValue()); break; case SetTypes.CLUSTER: { synchronized (sysSession) { synchronized (database) { addOrUpdateSetting(sysSession, name, value, 0); sysSession.commit(true); compareMode = CompareMode.getInstance(null, 0, binaryUnsigned); } else { int strength = getIntValue(); buff.append(" STRENGTH "); if (strength == Collator.IDENTICAL) {
private Set parseSetCollation() { Set command = new Set(session, SetTypes.COLLATION); String name = readAliasIdentifier(); command.setString(name); if (equalsToken(name, CompareMode.OFF)) { return command; } Collator coll = CompareMode.getCollator(name); if (coll == null) { throw DbException.getInvalidValueException("collation", name); } if (readIf("STRENGTH")) { if (readIf("PRIMARY")) { command.setInt(Collator.PRIMARY); } else if (readIf("SECONDARY")) { command.setInt(Collator.SECONDARY); } else if (readIf("TERTIARY")) { command.setInt(Collator.TERTIARY); } else if (readIf("IDENTICAL")) { command.setInt(Collator.IDENTICAL); } } else { command.setInt(coll.getStrength()); } return command; }
private Prepared parseSet() { if (readIf("@")) { Set command = new Set(session, SetTypes.VARIABLE); command.setString(readAliasIdentifier()); readIfEqualOrTo(); command.setExpression(readExpression()); return command; } else if (readIf("AUTOCOMMIT")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.MVCC); command.setInt(value ? 1 : 0); return command; } else if (readIf("EXCLUSIVE")) { readIfEqualOrTo(); Set command = new Set(session, SetTypes.EXCLUSIVE); command.setExpression(readExpression()); return command; } else if (readIf("IGNORECASE")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.IGNORECASE); command.setInt(value ? 1 : 0); return command; } else if (readIf("PASSWORD")) { } else if (readIf("MODE")) { readIfEqualOrTo(); Set command = new Set(session, SetTypes.MODE);
private void addOrUpdateSetting(Session session, String name, String s, int v) { Database database = session.getDatabase(); if (database.isReadOnly()) { return; } Setting setting = database.findSetting(name); boolean addNew = false; if (setting == null) { addNew = true; int id = getObjectId(); setting = new Setting(database, id, name); } if (s != null) { if (!addNew && setting.getStringValue().equals(s)) { return; } setting.setStringValue(s); } else { if (!addNew && setting.getIntValue() == v) { return; } setting.setIntValue(v); } if (addNew) { database.addDatabaseObject(session, setting); } else { database.updateMeta(session, setting); } }
private void addOrUpdateSetting(String name, String s, int v) { addOrUpdateSetting(session, name, s, v); }
private Prepared parseSet() throws SQLException { if (readIf("@")) { Set command = new Set(session, SetTypes.VARIABLE); command.setString(readAliasIdentifier()); readIfEqualOrTo(); command.setExpression(readExpression()); return command; } else if (readIf("AUTOCOMMIT")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.MVCC); command.setInt(value ? 1 : 0); return command; } else if (readIf("EXCLUSIVE")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.EXCLUSIVE); command.setInt(value ? 1 : 0); return command; } else if (readIf("IGNORECASE")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.IGNORECASE); command.setInt(value ? 1 : 0); return command; } else if (readIf("PASSWORD")) { } else if (readIf("MODE")) { readIfEqualOrTo();
private void addOrUpdateSetting(String name, String s, int v) throws SQLException { Database database = session.getDatabase(); if (database.getReadOnly()) { return; } Setting setting = database.findSetting(name); boolean addNew = false; if (setting == null) { addNew = true; int id = getObjectId(false, true); setting = new Setting(database, id, name); } if (s != null) { if (!addNew && setting.getStringValue().equals(s)) { return; } setting.setStringValue(s); } else { if (!addNew && setting.getIntValue() == v) { return; } setting.setIntValue(v); } if (addNew) { database.addDatabaseObject(session, setting); } else { database.update(session, setting); } }
private void addOrUpdateSetting(String name, String s, int v) { addOrUpdateSetting(session, name, s, v); }
private Prepared parseSet() { if (readIf("@")) { Set command = new Set(session, SetTypes.VARIABLE); command.setString(readAliasIdentifier()); readIfEqualOrTo(); command.setExpression(readExpression()); return command; } else if (readIf("AUTOCOMMIT")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.MVCC); command.setInt(value ? 1 : 0); return command; } else if (readIf("EXCLUSIVE")) { readIfEqualOrTo(); Set command = new Set(session, SetTypes.EXCLUSIVE); command.setExpression(readExpression()); return command; } else if (readIf("IGNORECASE")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.IGNORECASE); command.setInt(value ? 1 : 0); return command; } else if (readIf("PASSWORD")) { } else if (readIf("MODE")) { readIfEqualOrTo(); Set command = new Set(session, SetTypes.MODE);
private Set parseSetCollation() throws SQLException { Set command = new Set(session, SetTypes.COLLATION); String name = readAliasIdentifier(); command.setString(name); if (name.equals(CompareMode.OFF)) { return command; } Collator coll = CompareMode.getCollator(name); if (coll == null) { throw getSyntaxError(); } if (readIf("STRENGTH")) { if (readIf("PRIMARY")) { command.setInt(Collator.PRIMARY); } else if (readIf("SECONDARY")) { command.setInt(Collator.SECONDARY); } else if (readIf("TERTIARY")) { command.setInt(Collator.TERTIARY); } else if (readIf("IDENTICAL")) { command.setInt(Collator.IDENTICAL); } } else { command.setInt(coll.getStrength()); } return command; }
case SetTypes.MAX_LOG_SIZE: session.getUser().checkAdmin(); session.getDatabase().setMaxLogSize((long) getIntValue() * 1024 * 1024); addOrUpdateSetting(name, null, getIntValue()); break; case SetTypes.LOCK_TIMEOUT: session.setLockTimeout(getIntValue()); break; case SetTypes.LOCK_MODE: session.getUser().checkAdmin(); database.setLockMode(getIntValue()); addOrUpdateSetting(name, null, getIntValue()); break; case SetTypes.DEFAULT_LOCK_TIMEOUT: session.getUser().checkAdmin(); addOrUpdateSetting(name, null, getIntValue()); break; case SetTypes.DEFAULT_TABLE_TYPE: session.getUser().checkAdmin(); addOrUpdateSetting(name, null, getIntValue()); break; case SetTypes.TRACE_LEVEL_SYSTEM_OUT: session.getUser().checkAdmin(); if (getCurrentObjectId() == 0) { database.getTraceSystem().setLevelSystemOut(getIntValue()); if (getCurrentObjectId() == 0) {
private void addOrUpdateSetting(Session session, String name, String s, int v) { Database database = session.getDatabase(); if (database.isReadOnly()) { return; } Setting setting = database.findSetting(name); boolean addNew = false; if (setting == null) { addNew = true; int id = getObjectId(); setting = new Setting(database, id, name); } if (s != null) { if (!addNew && setting.getStringValue().equals(s)) { return; } setting.setStringValue(s); } else { if (!addNew && setting.getIntValue() == v) { return; } setting.setIntValue(v); } if (addNew) { database.addDatabaseObject(session, setting); } else { database.updateMeta(session, setting); } }
private void addOrUpdateSetting(String name, String s, int v) { addOrUpdateSetting(session, name, s, v); }
private Prepared parseSet() { if (readIf("@")) { Set command = new Set(session, SetTypes.VARIABLE); command.setString(readAliasIdentifier()); readIfEqualOrTo(); command.setExpression(readExpression()); return command; } else if (readIf("AUTOCOMMIT")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.MVCC); command.setInt(value ? 1 : 0); return command; } else if (readIf("EXCLUSIVE")) { readIfEqualOrTo(); Set command = new Set(session, SetTypes.EXCLUSIVE); command.setExpression(readExpression()); return command; } else if (readIf("IGNORECASE")) { readIfEqualOrTo(); boolean value = readBooleanSetting(); Set command = new Set(session, SetTypes.IGNORECASE); command.setInt(value ? 1 : 0); return command; } else if (readIf("PASSWORD")) { } else if (readIf("MODE")) { readIfEqualOrTo(); Set command = new Set(session, SetTypes.MODE);
private Set parseSetBinaryCollation() { Set command = new Set(session, SetTypes.BINARY_COLLATION); String name = readAliasIdentifier(); command.setString(name); if (equalsToken(name, CompareMode.UNSIGNED) || equalsToken(name, CompareMode.SIGNED)) { return command; } throw DbException.getInvalidValueException("BINARY_COLLATION", name); }
private Set parseSetCollation() { Set command = new Set(session, SetTypes.COLLATION); String name = readAliasIdentifier(); command.setString(name); if (equalsToken(name, CompareMode.OFF)) { return command; } Collator coll = CompareMode.getCollator(name); if (coll == null) { throw DbException.getInvalidValueException("collation", name); } if (readIf("STRENGTH")) { if (readIf("PRIMARY")) { command.setInt(Collator.PRIMARY); } else if (readIf("SECONDARY")) { command.setInt(Collator.SECONDARY); } else if (readIf("TERTIARY")) { command.setInt(Collator.TERTIARY); } else if (readIf("IDENTICAL")) { command.setInt(Collator.IDENTICAL); } } else { command.setInt(coll.getStrength()); } return command; }
case SetTypes.ALLOW_LITERALS: { session.getUser().checkAdmin(); int value = getIntValue(); if (value < 0 || value > 2) { throw DbException.getInvalidValueException("ALLOW_LITERALS", getIntValue()); addOrUpdateSetting(name, null, value); break; if (getIntValue() < 0) { throw DbException.getInvalidValueException("CACHE_SIZE", getIntValue()); database.setCacheSize(getIntValue()); addOrUpdateSetting(name, null, getIntValue()); break; case SetTypes.CLUSTER: { synchronized (sysSession) { synchronized (database) { addOrUpdateSetting(sysSession, name, value, 0); sysSession.commit(true); compareMode = CompareMode.getInstance(null, 0, binaryUnsigned); } else { int strength = getIntValue(); buff.append(" STRENGTH "); if (strength == Collator.IDENTICAL) {
private void addOrUpdateSetting(Session session, String name, String s, int v) { Database database = session.getDatabase(); if (database.isReadOnly()) { return; } Setting setting = database.findSetting(name); boolean addNew = false; if (setting == null) { addNew = true; int id = getObjectId(); setting = new Setting(database, id, name); } if (s != null) { if (!addNew && setting.getStringValue().equals(s)) { return; } setting.setStringValue(s); } else { if (!addNew && setting.getIntValue() == v) { return; } setting.setIntValue(v); } if (addNew) { database.addDatabaseObject(session, setting); } else { database.updateMeta(session, setting); } }