|
|
|
import { Connection, ConnectionJDBC, ConnectionJNDI, ConnectionPlugin } from '../../../crud/crud.typings';
|
|
|
|
import { connectionType } from '@constants/env';
|
|
|
|
import { getAllDatabaseTypes, getJdbcDatabaseType } from 'src/modules/app.service';
|
|
|
|
import { DATA_BASE_TYPES_OTHER } from '@constants/constant';
|
|
|
|
|
|
|
|
export function getCreator(connection: Connection) {
|
|
|
|
if (!connection.connectionData) {
|
|
|
|
return '';
|
|
|
|
}
|
|
|
|
switch (connection.connectionType) {
|
|
|
|
case connectionType.JDBC:
|
|
|
|
return (connection.connectionData as ConnectionJDBC).creator;
|
|
|
|
case connectionType.JNDI:
|
|
|
|
return (connection.connectionData as ConnectionJNDI).creator;
|
|
|
|
default:
|
|
|
|
return (connection.connectionData as ConnectionPlugin).creator;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export function getDatabaseType(connection: Connection) {
|
|
|
|
switch (connection.connectionType) {
|
|
|
|
case connectionType.JDBC:
|
|
|
|
return getJdbcDatabaseType((connection.connectionData as ConnectionJDBC).database, (connection.connectionData as ConnectionJDBC).driver).databaseType;
|
|
|
|
case connectionType.JNDI:
|
|
|
|
return connectionType.JNDI;
|
|
|
|
default:
|
|
|
|
return connection.connectionType;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export function hasRegistered(databaseType: string) {
|
|
|
|
const allDatabaseTypes = getAllDatabaseTypes();
|
|
|
|
switch (databaseType) {
|
|
|
|
case connectionType.JDBC:
|
|
|
|
return true;
|
|
|
|
case connectionType.JNDI:
|
|
|
|
return true;
|
|
|
|
case DATA_BASE_TYPES_OTHER.text:
|
|
|
|
return true;
|
|
|
|
default:
|
|
|
|
return allDatabaseTypes.some(item => item.databaseType === databaseType);
|
|
|
|
}
|
|
|
|
}
|