Package com.impetus.kundera.rest.dto

Examples of com.impetus.kundera.rest.dto.SchemaMetadata


        EntityManager em = EMRepository.INSTANCE.getEM(sessionToken);
        StringTokenizer st = new StringTokenizer(persistenceUnits, ",");
        EntityManagerFactoryImpl emfImpl = (EntityManagerFactoryImpl) em.getEntityManagerFactory();

        SchemaMetadata schemaMetadata = new SchemaMetadata();
        String mediaType = headers != null && headers.getRequestHeaders().containsKey("Content-type")? headers.getRequestHeader("Content-type").get(0) : MediaType.APPLICATION_JSON;
        mediaType =
            mediaType.equalsIgnoreCase(MediaType.APPLICATION_XML) ? MediaType.APPLICATION_XML
                : MediaType.APPLICATION_JSON;
        while (st.hasMoreTokens()) {

            String persistenceUnit = st.nextToken();
            PersistenceUnitMetadata puMetadata =
                emfImpl.getKunderaMetadataInstance().getApplicationMetadata()
                    .getPersistenceUnitMetadata(persistenceUnit);
            String schemaStr = puMetadata.getProperty("kundera.keyspace");

            if (schemaStr != null) {
                Schema schema = new Schema();
                schema.setSchemaName(schemaStr);

               
                MetamodelImpl metamodel = (MetamodelImpl) em.getEntityManagerFactory().getMetamodel();
                Map<String, EntityMetadata> metamodelMap = metamodel.getEntityMetadataMap();

                for (String clazz : metamodelMap.keySet()) {
                    EntityMetadata m = metamodelMap.get(clazz);
                    Table table = new Table();
                    table.setEntityClassName(clazz);
                    table.setTableName(m.getTableName());
                    table.setSimpleEntityClassName(m.getEntityClazz().getSimpleName());

                    schema.addTable(table);
                }
                schemaMetadata.addSchema(schema);
            }
        }

        if (schemaMetadata.getSchemaList().isEmpty()) {
            if (log.isDebugEnabled())
                log.warn("GET: getSchemaList: Can't find Schema for PUs " + persistenceUnits);
            return Response.noContent().build();
        } else {
            if (mediaType.equalsIgnoreCase(MediaType.APPLICATION_JSON)) {
View Full Code Here

TOP

Related Classes of com.impetus.kundera.rest.dto.SchemaMetadata

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.