Example usage for org.hibernate.type StringType INSTANCE

List of usage examples for org.hibernate.type StringType INSTANCE

Introduction

In this page you can find the example usage for org.hibernate.type StringType INSTANCE.

Prototype

StringType INSTANCE

To view the source code for org.hibernate.type StringType INSTANCE.

Click Source Link

Usage

From source file:org.kimios.kernel.reporting.impl.DocumentTransactionsReport.java

License:Open Source License

public String getData() throws ConfigException, DataSourceException {
    if (order != null && order.length() == 0) {
        order = null;/*from ww  w  .ja va 2 s  .  c  o  m*/
    }
    try {
        String rq = "SELECT " + "e.dm_entity_name as DocumentName, "
                + "t.transfer_mode as TransferMode, t.username as UserName, "
                + "t.user_source as UserSource, t.last_activity_date as LastActivityDate, "
                + "e.dm_entity_path as Position, t.id as TransactionUid "
                + "FROM dm_entity e, document d, document_version v, data_transaction t "
                + "WHERE d.id=v.document_id AND v.id=t.document_version_id AND d.id=e.dm_entity_id "
                + "ORDER BY " + (order == null ? "LastActivityDate" : order) + " " + (asc ? "ASC" : "DESC");

        SQLQuery sql = FactoryInstantiator.getInstance().getDtrFactory().getSession().createSQLQuery(rq);
        sql.addScalar("DocumentName", StringType.INSTANCE);
        sql.addScalar("TransferMode", IntegerType.INSTANCE);
        sql.addScalar("UserName", StringType.INSTANCE);
        sql.addScalar("LastActivityDate", StringType.INSTANCE);
        sql.addScalar("Position", StringType.INSTANCE);
        sql.addScalar("TransactionUid", StringType.INSTANCE);

        List<Object[]> lReports = sql.list();
        Report report = new Report("DocumentTransactions");
        report.addColumn("TransactionUid");
        report.addColumn("Position");
        report.addColumn("DocumentName");
        report.addColumn("TransferMode");
        report.addColumn("UserName");
        report.addColumn("LastActivityDate");

        for (Object[] r : lReports) {
            Vector<Cell> cells = new Vector<Cell>();
            cells.add(new Cell("DocumentName", (String) r[0]));
            cells.add(new Cell("TransferMode",
                    (String) ((Integer) r[1] == 1 ? "Upload" : (Integer) r[1] == 2 ? "Download" : "Unknown?")));
            cells.add(new Cell("UserName", (String) r[2]));
            cells.add(new Cell("LastActivityDate", (String) r[3]));
            cells.add(new Cell("Position",
                    (String) ((String) r[4]).substring(0, ((String) r[4]).lastIndexOf('/'))));
            cells.add(new Cell("TransactionUid", (Long) r[5]));
            report.addRow(new Row(cells));
        }

        return report.toXML();
    } catch (HibernateException he) {
        he.printStackTrace();
        throw he;
    }
}

From source file:org.kimios.kernel.reporting.impl.EntityInformationsReport.java

License:Open Source License

public String getData() throws ConfigException, DataSourceException {
    Vector<Cell> cells = new Vector<Cell>();
    Report report = new Report("EntityInformations");
    report.addColumn("Position");
    report.addColumn("AllVersionsVolume");
    report.addColumn("CurrentVersionsVolume");
    report.addColumn("EntitiesNumber");

    /* get informations about entity */
    String rqInformationsAboutEntity = "SELECT e.dm_entity_path as Position, e.dm_entity_type as EntityType ";
    rqInformationsAboutEntity += "FROM dm_entity e ";
    rqInformationsAboutEntity += "WHERE e.dm_entity_id=:dmEntityUid ";
    SQLQuery sqlInformationsAboutEntity = FactoryInstantiator.getInstance().getDtrFactory().getSession()
            .createSQLQuery(rqInformationsAboutEntity);
    sqlInformationsAboutEntity.addScalar("Position", StringType.INSTANCE);
    sqlInformationsAboutEntity.addScalar("EntityType", IntegerType.INSTANCE);
    sqlInformationsAboutEntity.setLong("dmEntityUid", dmEntity.getUid());

    List<Object[]> reports = sqlInformationsAboutEntity.list();
    for (Object[] r : reports) {
        cells.add(new Cell("Position", (String) r[0]));
    }/*  w ww  .j a  va2s .  c  om*/

    /* get all versions volume */
    String rqAllVersionsVolume = "SELECT SUM(v.version_length) as AllVersionsVolume "
            + "FROM dm_entity e, document_version v " + "WHERE e.dm_entity_id=v.document_id "
            + "AND e.dm_entity_path LIKE :dmEntityPath";
    SQLQuery sqlAllVersionsVolume = FactoryInstantiator.getInstance().getDtrFactory().getSession()
            .createSQLQuery(rqAllVersionsVolume);
    sqlAllVersionsVolume.addScalar("AllVersionsVolume", LongType.INSTANCE);
    sqlAllVersionsVolume.setString("dmEntityPath", dmEntity.getPath() + "/%");
    Object allVersionsVolume = sqlAllVersionsVolume.list().get(0);
    if (allVersionsVolume == null) {
        allVersionsVolume = new Long(0);
    }
    cells.add(new Cell("AllVersionsVolume", allVersionsVolume));

    /* get current versions volume */

    String rqCurrentVersionsVolume = "SELECT SUM(v.version_length) as AllVersionsVolume "
            + "FROM document_version v, dm_entity e " + "WHERE v.document_id=e.dm_entity_id "
            + "AND e.dm_entity_path LIKE :dmEntityPath " + "AND v.creation_date IN ( "
            + "SELECT MAX(creation_date) as creationDate " + "FROM document_version v "
            + "GROUP BY document_id " + ")";
    SQLQuery sqlCurrentVersionsVolume = FactoryInstantiator.getInstance().getDtrFactory().getSession()
            .createSQLQuery(rqCurrentVersionsVolume);
    sqlCurrentVersionsVolume.addScalar("AllVersionsVolume", LongType.INSTANCE);
    sqlCurrentVersionsVolume.setString("dmEntityPath", dmEntity.getPath() + "/%");
    Object currentVersionsVolume = sqlCurrentVersionsVolume.list().get(0);
    if (currentVersionsVolume == null) {
        currentVersionsVolume = new Long(0);
    }
    cells.add(new Cell("CurrentVersionsVolume", currentVersionsVolume));

    /* get entities number */

    String rqEntitiesNumber = "SELECT COUNT(dm_entity_id) as EntitiesNumber " + "FROM dm_entity e "
            + "WHERE e.dm_entity_path LIKE :dmEntityPath ";
    SQLQuery sqlEntitiesNumber = getSession().createSQLQuery(rqEntitiesNumber);
    sqlEntitiesNumber.addScalar("EntitiesNumber", LongType.INSTANCE);
    sqlEntitiesNumber.setString("dmEntityPath", dmEntity.getPath() + "/%");
    cells.add(new Cell("EntitiesNumber", sqlEntitiesNumber.list().get(0)));

    report.addRow(new Row(cells));
    return report.toXML();
}

From source file:org.kimios.kernel.reporting.impl.UserActionsReport.java

License:Open Source License

public String getData() throws ConfigException, DataSourceException {
    if (order != null && order.length() == 0) {
        order = null;/* w  ww.  j a v a 2  s .  c om*/
    }
    if (actionType != null && order != null && order.length() == 0) {
        actionType = null;
    }
    String tmpTable = null;
    try {
        Report temporaryReport = new Report("UserActions");
        temporaryReport.addColumn("Position");
        temporaryReport.addColumn("ActionType");
        temporaryReport.addColumn("ActionTypeParameters");
        temporaryReport.addColumn("Date");

        Calendar dtFrom = Calendar.getInstance();
        dtFrom.setTime(dateFrom);
        Calendar dtTo = Calendar.getInstance();
        dtTo.setTime(dateTo);
        dtFrom.set(Calendar.SECOND, 0);
        dtFrom.set(Calendar.MINUTE, 0);
        dtFrom.set(Calendar.HOUR, 0);
        dtTo.set(Calendar.SECOND, 59);
        dtTo.set(Calendar.MINUTE, 59);
        dtTo.set(Calendar.HOUR, 23);

        /* Workspace log */

        String rqWorkspaceLog = "SELECT w.action as ActionType, ";
        rqWorkspaceLog += "w.action_parameter as ActionTypeParameters, ";
        rqWorkspaceLog += "w.dm_entity_id as EntityUid, ";
        rqWorkspaceLog += "w.log_time as Date, ";
        rqWorkspaceLog += "e.dm_entity_name as EntityName ";
        rqWorkspaceLog += "FROM authentication_source a, entity_log w ";
        rqWorkspaceLog += "LEFT JOIN dm_entity e ";
        rqWorkspaceLog += "ON w.dm_entity_id = e.dm_entity_id ";
        rqWorkspaceLog += "WHERE a.source_name=w.user_source ";
        rqWorkspaceLog += "AND w.username=:userName ";
        rqWorkspaceLog += "AND w.user_source=:userSource ";
        rqWorkspaceLog += "AND w.log_time >= :dateFrom ";
        rqWorkspaceLog += "AND w.log_time <= :dateTo";

        SQLQuery sqlWorkspaceLog = FactoryInstantiator.getInstance().getDtrFactory().getSession()
                .createSQLQuery(rqWorkspaceLog);
        sqlWorkspaceLog.addScalar("ActionType", IntegerType.INSTANCE);
        sqlWorkspaceLog.addScalar("ActionTypeParameters", StringType.INSTANCE);
        sqlWorkspaceLog.addScalar("EntityUid", LongType.INSTANCE);
        sqlWorkspaceLog.addScalar("Date", StringType.INSTANCE);
        sqlWorkspaceLog.addScalar("EntityName", StringType.INSTANCE);
        sqlWorkspaceLog.setString("userName", user.getUid());
        sqlWorkspaceLog.setString("userSource", user.getAuthenticationSourceName());
        sqlWorkspaceLog.setDate("dateFrom", dtFrom.getTime());
        sqlWorkspaceLog.setDate("dateTo", dtTo.getTime());

        List<Object[]> reportWorkspaceLog = sqlWorkspaceLog.list();
        for (Object[] r : reportWorkspaceLog) {
            Vector<Cell> cells = new Vector<Cell>();
            cells.add(new Cell("ActionType", (Integer) r[0]));
            cells.add(new Cell("ActionTypeParameters", r[1] == null ? "" : (String) r[1]));
            cells.add(new Cell("Date", (String) r[3]));
            cells.add(new Cell("EntityName", r[4] == null ? "" : (String) r[4]));
            cells.add(new Cell("Position", new String("/")));
            temporaryReport.addRow(new Row(cells));
        }

        /* Folder log */

        String rqFolderLog = "SELECT f.action as ActionType, ";
        rqFolderLog += "f.action_parameter as ActionTypeParameters, ";
        rqFolderLog += "f.dm_entity_id as EntityUid, ";
        rqFolderLog += "f.log_time as Date, ";
        rqFolderLog += "e.dm_entity_name as EntityName, ";
        rqFolderLog += "entt.dm_entity_path as Position ";
        rqFolderLog += "FROM authentication_source a, entity_log f ";
        rqFolderLog += "LEFT JOIN dm_entity e ";
        rqFolderLog += "ON f.dm_entity_id = e.dm_entity_id ";
        rqFolderLog += "LEFT JOIN dm_entity entt ";
        rqFolderLog += "ON f.dm_entity_id = entt.dm_entity_id ";
        rqFolderLog += "WHERE a.source_name=f.user_source ";
        rqFolderLog += "AND f.username=:userName ";
        rqFolderLog += "AND f.user_source=:userSource ";
        rqFolderLog += "AND f.log_time >= :dateFrom ";
        rqFolderLog += "AND f.log_time <= :dateTo ";

        SQLQuery sqlFolderLog = FactoryInstantiator.getInstance().getDtrFactory().getSession()
                .createSQLQuery(rqFolderLog);
        sqlFolderLog.addScalar("ActionType", IntegerType.INSTANCE);
        sqlFolderLog.addScalar("ActionTypeParameters", StringType.INSTANCE);
        sqlFolderLog.addScalar("EntityUid", LongType.INSTANCE);
        sqlFolderLog.addScalar("Date", StringType.INSTANCE);
        sqlFolderLog.addScalar("EntityName", StringType.INSTANCE);
        sqlFolderLog.addScalar("Position", StringType.INSTANCE);
        sqlFolderLog.setString("userName", user.getUid());
        sqlFolderLog.setString("userSource", user.getAuthenticationSourceName());
        sqlFolderLog.setDate("dateFrom", dtFrom.getTime());
        sqlFolderLog.setDate("dateTo", dtTo.getTime());

        List<Object[]> reportFolderLog = sqlFolderLog.list();
        for (Object[] r : reportFolderLog) {
            Vector<Cell> cells = new Vector<Cell>();
            cells.add(new Cell("ActionType", (Integer) r[0]));
            cells.add(new Cell("ActionTypeParameters", r[1] == null ? "" : (String) r[1]));
            cells.add(new Cell("Date", (String) r[3]));
            cells.add(new Cell("EntityName", r[4] == null ? "" : (String) r[4]));
            cells.add(new Cell("Position", r[5] == null ? "" : (String) r[5]));
            temporaryReport.addRow(new Row(cells));
        }

        /* Document log */

        String rqDocumentLog = "SELECT d.action as ActionType, ";
        rqDocumentLog += "d.action_parameter as ActionTypeParameters, ";
        rqDocumentLog += "d.dm_entity_id as EntityUid, ";
        rqDocumentLog += "d.log_time as Date, ";
        rqDocumentLog += "entt.dm_entity_name as EntityName, ";
        rqDocumentLog += "entt.dm_entity_path as Position ";
        rqDocumentLog += "FROM authentication_source a, entity_log d ";
        rqDocumentLog += "LEFT JOIN dm_entity entt ";
        rqDocumentLog += "ON d.dm_entity_id = entt.dm_entity_id ";
        rqDocumentLog += "WHERE a.source_name=d.user_source ";
        rqDocumentLog += "AND d.username=:userName ";
        rqDocumentLog += "AND d.user_source=:userSource ";
        rqDocumentLog += "AND d.log_time >= :dateFrom ";
        rqDocumentLog += "AND d.log_time <= :dateTo";

        SQLQuery sqlDocumentLog = FactoryInstantiator.getInstance().getDtrFactory().getSession()
                .createSQLQuery(rqDocumentLog);
        sqlDocumentLog.addScalar("ActionType", IntegerType.INSTANCE);
        sqlDocumentLog.addScalar("ActionTypeParameters", StringType.INSTANCE);
        sqlDocumentLog.addScalar("EntityUid", LongType.INSTANCE);
        sqlDocumentLog.addScalar("Date", StringType.INSTANCE);
        sqlDocumentLog.addScalar("EntityName", StringType.INSTANCE);
        sqlDocumentLog.addScalar("Position", StringType.INSTANCE);
        sqlDocumentLog.setString("userName", user.getUid());
        sqlDocumentLog.setString("userSource", user.getAuthenticationSourceName());
        sqlDocumentLog.setDate("dateFrom", dtFrom.getTime());
        sqlDocumentLog.setDate("dateTo", dtTo.getTime());

        List<Object[]> reportDocumentLog = sqlDocumentLog.list();
        for (Object[] r : reportDocumentLog) {
            Vector<Cell> cells = new Vector<Cell>();
            cells.add(new Cell("ActionType", (Integer) r[0]));
            cells.add(new Cell("ActionTypeParameters", r[1] == null ? "" : (String) r[1]));
            cells.add(new Cell("Date", (String) r[3]));
            cells.add(new Cell("EntityName", r[4] == null ? "" : (String) r[4]));
            cells.add(new Cell("Position", r[5] == null ? "" : (String) r[5]));
            temporaryReport.addRow(new Row(cells));
        }

        /* Create temporary table */

        tmpTable = "tmp_" + sessionUid.substring(0, 8) + "_" + new Date().getTime();
        String rqCreateTable = "CREATE TABLE " + tmpTable + " ( ";
        rqCreateTable += "ReportActionType character varying(2), ";
        rqCreateTable += "ReportActionTypeParameters character varying(255), ";
        rqCreateTable += "ReportEntityName character varying(255), ";
        rqCreateTable += "ReportDate character varying(255), ";
        rqCreateTable += "ReportPosition character varying(255) )";

        SQLQuery sqlCreateTable = FactoryInstantiator.getInstance().getDtrFactory().getSession()
                .createSQLQuery(rqCreateTable);
        sqlCreateTable.executeUpdate();

        for (Row row : temporaryReport.getBody().getRows()) {
            String action = String.valueOf(row.getValue("ActionType"));
            String parameters = String.valueOf(row.getValue("ActionTypeParameters"));
            String entityName = String.valueOf(row.getValue("EntityName"));
            String date = String.valueOf(row.getValue("Date"));
            String position = String.valueOf(row.getValue("Position"));
            String rqInsertTable = "INSERT INTO " + tmpTable + " ( ";
            rqInsertTable += "ReportActionType, ReportActionTypeParameters, ReportEntityName, ReportDate, ReportPosition ";
            rqInsertTable += " ) VALUES (:actionType,:parameters,:entityName,:date,:position)";
            SQLQuery sqlInsertTable = getSession().createSQLQuery(rqInsertTable);
            sqlInsertTable.setString("actionType", action);
            sqlInsertTable.setString("parameters", parameters);
            sqlInsertTable.setString("entityName", entityName);
            sqlInsertTable.setString("date", date);
            sqlInsertTable.setString("position", position);
            sqlInsertTable.executeUpdate();
        }

        /* Report */

        String rq = "SELECT ReportActionType, ReportActionTypeParameters, ReportEntityName, ReportDate, ReportPosition ";
        rq += "FROM " + tmpTable + " ";
        rq += (actionType != null ? " WHERE ReportActionType=:actionType " : " ");
        rq += " ORDER BY " + (order == null ? "ReportDate" : order) + " " + (asc ? "ASC" : "DESC");

        SQLQuery sql = FactoryInstantiator.getInstance().getDtrFactory().getSession().createSQLQuery(rq);
        sql.addScalar("ReportActionType", StringType.INSTANCE);
        sql.addScalar("ReportActionTypeParameters", StringType.INSTANCE);
        sql.addScalar("ReportEntityName", StringType.INSTANCE);
        sql.addScalar("ReportDate", StringType.INSTANCE);
        sql.addScalar("ReportPosition", StringType.INSTANCE);
        if (actionType != null) {
            sql.setString("actionType", actionType);
        }

        Report report = new Report("UserActions");
        report.addColumn("Position");
        report.addColumn("EntityName");
        report.addColumn("ActionType");
        report.addColumn("ActionTypeParameters");
        report.addColumn("Date");

        List<Object[]> reports = sql.list();
        for (Object[] r : reports) {
            Vector<Cell> cells = new Vector<Cell>();
            cells.add(new Cell("ActionType", (String) r[0]));
            cells.add(new Cell("ActionTypeParameters", (String) r[1]));
            cells.add(new Cell("EntityName", (String) r[2]));
            cells.add(new Cell("Date", (String) r[3]));

            String pos = ((String) r[4]);
            int index = pos.lastIndexOf('/');
            if (index != -1 && !"/".equals(pos)) {
                pos = pos.substring(0, index);
            }
            cells.add(new Cell("Position", pos));
            report.addRow(new Row(cells));
        }
        return report.toXML();
    } catch (HibernateException he) {
        he.printStackTrace();
        throw he;
    } finally {
        /* Drop temporary table */
        FactoryInstantiator.getInstance().getDtrFactory().getSession().createSQLQuery("DROP TABLE " + tmpTable)
                .executeUpdate();
    }
}

From source file:org.ligoj.bootstrap.core.dao.SequenceIdentifierGeneratorStrategyProviderTest.java

License:MIT License

/**
 * Check strategy configuration.// w w  w .  j  a  v  a 2 s  .  c o m
 */
@Test
void testConfiguration() {
    final var params = new Properties();
    params.put("identity_tables", "summy.seg");
    params.put(PersistentIdentifierGenerator.IDENTIFIER_NORMALIZER, new ObjectNameNormalizer() {

        @Override
        protected MetadataBuildingContext getBuildingContext() {
            return null;
        }
    });

    var optimizedSequenceStyleGenerator = newStyleGenerator();
    optimizedSequenceStyleGenerator.configure(StringType.INSTANCE, params, newServiceRegistry());
}

From source file:org.mousephenotype.dcc.exportlibrary.exporter.dbloading.Loader.java

License:Apache License

public CentreSpecimenSet getValidMutants() throws ConfigurationException, HibernateException {
    String printFile = FileReader.printFile(VALID_MUTANTS);
    CentreSpecimenSet centreSpecimenSet = new CentreSpecimenSet();
    List<Specimen> specimens = this.hibernateManager.nativeQuery(printFile, Specimen.class);
    logger.info("{} specimens retrieved", specimens.size());
    if (specimens != null && !specimens.isEmpty()) {
        CentreSpecimen aux = null;/*ww w  . j a v a 2s  .c  om*/
        Table<String, Class, Object> parameters = HashBasedTable.create();

        Map<String, org.hibernate.type.Type> scalars = ImmutableMap.<String, org.hibernate.type.Type>builder()
                .put("centreID", StringType.INSTANCE).build();
        logger.info("linking to ");
        for (Specimen specimen : specimens) {
            parameters.put("specimenHJID", Long.class, specimen.getHjid());
            List<String> nativeQuery = this.hibernateManager.nativeQuery(
                    "select CENTRESPECIMEN.CENTREID as centreID from phenodcc_raw.CENTRESPECIMEN join phenodcc_raw.SPECIMEN on CENTRESPECIMEN.HJID = SPECIMEN.MOUSEOREMBRYO_CENTRESPECIMEN_0 where SPECIMEN.HJID = :specimenHJID",
                    scalars, parameters);
            if (nativeQuery != null && !nativeQuery.isEmpty()) {
                logger.trace("{} centre for specimenID {}", nativeQuery.get(0), specimen.getSpecimenID());
                aux = this.getCentreSpecimen(centreSpecimenSet, CentreILARcode.valueOf(nativeQuery.get(0)));
                if (aux == null) {
                    aux = new CentreSpecimen();
                    aux.setCentreID(CentreILARcode.valueOf(nativeQuery.get(0)));
                    centreSpecimenSet.getCentre().add(aux);
                }
                aux.getMouseOrEmbryo().add(specimen);
            } else {
                logger.error("specimen HJID {} is not part of a centreSpecimen", specimen.getHjid());
            }
        }
    }
    return centreSpecimenSet;
}

From source file:org.mousephenotype.dcc.exportlibrary.exporter.dbloading.Loader.java

License:Apache License

public CentreSpecimenSet getValidBaselines() throws ConfigurationException, HibernateException {
    String printFile = FileReader.printFile(VALID_BASELINES);
    CentreSpecimenSet centreSpecimenSet = new CentreSpecimenSet();
    List<Specimen> specimens = this.hibernateManager.nativeQuery(printFile, Specimen.class);
    logger.info("{} specimens retrieved", specimens.size());
    if (specimens != null && !specimens.isEmpty()) {
        CentreSpecimen aux = null;/* w w w  .ja v  a  2 s  . com*/
        Table<String, Class, Object> parameters = HashBasedTable.create();

        Map<String, org.hibernate.type.Type> scalars = ImmutableMap.<String, org.hibernate.type.Type>builder()
                .put("centreID", StringType.INSTANCE).build();
        logger.info("linking to ");
        for (Specimen specimen : specimens) {
            parameters.put("specimenHJID", Long.class, specimen.getHjid());
            List<String> nativeQuery = this.hibernateManager.nativeQuery(
                    "select CENTRESPECIMEN.CENTREID as centreID from phenodcc_raw.CENTRESPECIMEN join phenodcc_raw.SPECIMEN on CENTRESPECIMEN.HJID = SPECIMEN.MOUSEOREMBRYO_CENTRESPECIMEN_0 where SPECIMEN.HJID = :specimenHJID",
                    scalars, parameters);
            if (nativeQuery != null && !nativeQuery.isEmpty()) {
                logger.trace("{} centre for specimenID {}", nativeQuery.get(0), specimen.getSpecimenID());
                aux = this.getCentreSpecimen(centreSpecimenSet, CentreILARcode.valueOf(nativeQuery.get(0)));
                if (aux == null) {
                    aux = new CentreSpecimen();
                    aux.setCentreID(CentreILARcode.valueOf(nativeQuery.get(0)));
                    centreSpecimenSet.getCentre().add(aux);
                }
                aux.getMouseOrEmbryo().add(specimen);
            } else {
                logger.error("specimen HJID {} is not part of a centreSpecimen", specimen.getHjid());
            }
        }
    }
    return centreSpecimenSet;
}

From source file:org.mousephenotype.dcc.exportlibrary.exporter.dbloading.Loader.java

License:Apache License

public CentreSpecimenSet getSingleColonyID() throws ConfigurationException, HibernateException {
    String printFile = FileReader.printFile(SINGLE_COLONYID);
    CentreSpecimenSet centreSpecimenSet = new CentreSpecimenSet();
    List<Specimen> specimens = this.hibernateManager.nativeQuery(printFile, Specimen.class);
    logger.trace("{} specimens retrieved", specimens.size());
    if (specimens != null && !specimens.isEmpty()) {
        CentreSpecimen aux = null;/*from ww  w  .j  ava2 s.  c o  m*/
        Table<String, Class, Object> parameters = HashBasedTable.create();

        Map<String, org.hibernate.type.Type> scalars = ImmutableMap.<String, org.hibernate.type.Type>builder()
                .put("centreID", StringType.INSTANCE).build();
        logger.trace("linking to ");
        for (Specimen specimen : specimens) {
            parameters.put("specimenHJID", Long.class, specimen.getHjid());
            List<String> nativeQuery = this.hibernateManager.nativeQuery(
                    "select CENTRESPECIMEN.CENTREID as centreID from phenodcc_raw.CENTRESPECIMEN join phenodcc_raw.SPECIMEN on CENTRESPECIMEN.HJID = SPECIMEN.MOUSEOREMBRYO_CENTRESPECIMEN_0 where SPECIMEN.HJID = :specimenHJID",
                    scalars, parameters);
            if (nativeQuery != null && !nativeQuery.isEmpty()) {
                logger.trace("{} centre for specimenID {}", nativeQuery.get(0), specimen.getSpecimenID());
                aux = this.getCentreSpecimen(centreSpecimenSet, CentreILARcode.valueOf(nativeQuery.get(0)));
                if (aux == null) {
                    aux = new CentreSpecimen();
                    aux.setCentreID(CentreILARcode.valueOf(nativeQuery.get(0)));
                    centreSpecimenSet.getCentre().add(aux);
                }
                aux.getMouseOrEmbryo().add(specimen);
            } else {
                logger.error("specimen HJID {} is not part of a centreSpecimen", specimen.getHjid());
            }
        }
    }
    return centreSpecimenSet;
}

From source file:org.mousephenotype.dcc.exportlibrary.rawReader.ColonyIDsExtractor.java

License:Apache License

private void loadColonyIDs() {

    Map<String, org.hibernate.type.Type> scalars = ImmutableMap.<String, org.hibernate.type.Type>builder()
            .put("colonyID", StringType.INSTANCE).build();
    this.colonyIDs = this.hibernateManager.nativeQuery(DISTINCT_COLONYIDS_QUERY, scalars);
    logger.info("retrieved {} colonyIDs", this.colonyIDs.size());
}

From source file:org.openbravo.base.session.OBYesNoType.java

License:Open Source License

public String objectToSQLString(Boolean value, Dialect dialect) throws Exception {
    return StringType.INSTANCE.objectToSQLString(value.booleanValue() ? "Y" : "N", dialect);
}

From source file:org.openbravo.costing.CostingMigrationProcess.java

License:Open Source License

private void doChecks() {
    // Check all transactions have a legacy cost available.
    AlertRule legacyCostAvailableAlert = getLegacyCostAvailableAlert();
    if (legacyCostAvailableAlert == null) {
        Organization org0 = OBDal.getInstance().get(Organization.class, "0");
        Client client0 = OBDal.getInstance().get(Client.class, "0");

        legacyCostAvailableAlert = OBProvider.getInstance().get(AlertRule.class);
        legacyCostAvailableAlert.setClient(client0);
        legacyCostAvailableAlert.setOrganization(org0);
        legacyCostAvailableAlert.setName(alertRuleName);
        // Header tab of Product window
        legacyCostAvailableAlert.setTab(OBDal.getInstance().get(org.openbravo.model.ad.ui.Tab.class, "180"));
        StringBuffer sql = new StringBuffer();
        sql.append("select t.m_product_id as referencekey_id, '0' as ad_role_id, null as ad_user_id,");
        sql.append("\n    'Product ' || p.name || ' has transactions on dates without available");
        sql.append(" costs. Min date ' || min(t.movementdate) || '. Max date ' || max(t.movementdate)");
        sql.append(" as description,");
        sql.append("\n    'Y' as isactive, p.ad_org_id, p.ad_client_id,");
        sql.append("\n    now() as created, '0' as createdby, now() as updated, '0' as updatedby,");
        sql.append("\n    p.name as record_id");
        sql.append("\nfrom m_transaction t join m_product p on t.m_product_id = p.m_product_id");
        sql.append("\nwhere not exists (select 1 from m_costing c ");
        sql.append("\n                  where t.isactive = 'Y'");
        sql.append("\n                    and t.m_product_id = c.m_product_id");
        sql.append("\n                    and t.movementdate >= c.datefrom");
        sql.append("\n                    and t.movementdate < c.dateto");
        sql.append("\n                    and c.cost is not null)");
        sql.append("\ngroup by t.m_product_id, p.ad_org_id, p.ad_client_id, p.name");
        legacyCostAvailableAlert.setSql(sql.toString());

        OBDal.getInstance().save(legacyCostAvailableAlert);
        OBDal.getInstance().flush();//from  w ww.java  2  s.  c  o m

        insertAlertRecipients(legacyCostAvailableAlert);
    }

    // Delete previous alerts
    StringBuffer delete = new StringBuffer();
    delete.append("delete from " + Alert.ENTITY_NAME);
    delete.append(" where " + Alert.PROPERTY_ALERTRULE + " = :alertRule ");
    Query queryDelete = OBDal.getInstance().getSession().createQuery(delete.toString());
    queryDelete.setEntity("alertRule", legacyCostAvailableAlert);
    queryDelete.executeUpdate();

    if (legacyCostAvailableAlert.isActive()) {

        SQLQuery alertQry = OBDal.getInstance().getSession().createSQLQuery(legacyCostAvailableAlert.getSql());
        alertQry.addScalar("REFERENCEKEY_ID", StringType.INSTANCE);
        alertQry.addScalar("AD_ROLE_ID", StringType.INSTANCE);
        alertQry.addScalar("AD_USER_ID", StringType.INSTANCE);
        alertQry.addScalar("DESCRIPTION", StringType.INSTANCE);
        alertQry.addScalar("ISACTIVE", StringType.INSTANCE);
        alertQry.addScalar("AD_ORG_ID", StringType.INSTANCE);
        alertQry.addScalar("AD_CLIENT_ID", StringType.INSTANCE);
        alertQry.addScalar("CREATED", DateType.INSTANCE);
        alertQry.addScalar("CREATEDBY", StringType.INSTANCE);
        alertQry.addScalar("UPDATED", DateType.INSTANCE);
        alertQry.addScalar("UPDATEDBY", StringType.INSTANCE);
        alertQry.addScalar("RECORD_ID", StringType.INSTANCE);
        List<?> rows = alertQry.list();
        for (final Object row : rows) {
            final Object[] values = (Object[]) row;
            Alert alert = OBProvider.getInstance().get(Alert.class);
            alert.setCreatedBy(OBDal.getInstance().get(User.class, "0"));
            alert.setUpdatedBy(OBDal.getInstance().get(User.class, "0"));
            alert.setClient(OBDal.getInstance().get(Client.class, values[6]));
            alert.setOrganization(OBDal.getInstance().get(Organization.class, values[5]));
            alert.setAlertRule(legacyCostAvailableAlert);
            alert.setRecordID((String) values[11]);
            alert.setReferenceSearchKey((String) values[0]);
            alert.setDescription((String) values[3]);
            alert.setUserContact(null);
            alert.setRole(OBDal.getInstance().get(org.openbravo.model.ad.access.Role.class, "0"));
            OBDal.getInstance().save(alert);
        }
        if (SessionHandler.isSessionHandlerPresent()) {
            SessionHandler.getInstance().commitAndStart();
        }
        if (rows.size() > 0) {
            throw new OBException("@TrxWithNoCost@");
        }
    }
}