コード例 #1
0
ファイル: OlapQueryService.java プロジェクト: ra2085/saiku
 public void qm2mdx(String queryName) {
   IQuery query = getIQuery(queryName);
   OlapConnection con =
       olapDiscoverService.getNativeConnection(query.getSaikuCube().getConnectionName());
   MdxQuery mdx = new MdxQuery(con, query.getSaikuCube(), query.getName(), getMDXQuery(queryName));
   putIQuery(queryName, mdx);
   query = null;
 }
コード例 #2
0
ファイル: OlapQueryService.java プロジェクト: ra2085/saiku
 public SaikuQuery createNewOlapQuery(String name, String xml) {
   try {
     QueryDeserializer qd = new QueryDeserializer();
     SaikuCube scube = qd.getFakeCube(xml);
     OlapConnection con = olapDiscoverService.getNativeConnection(scube.getConnectionName());
     IQuery query = qd.unparse(xml, con);
     // TODO - this is not good! could lead to duplicate queries
     if (name == null) {
       name = UUID.randomUUID().toString();
       putIQuery(name, query);
     } else {
       putIQuery(name, query);
     }
     return ObjectUtil.convert(query);
   } catch (Exception e) {
     throw new SaikuServiceException("Error creating query from xml", e);
   }
 }
コード例 #3
0
ファイル: OlapQueryService.java プロジェクト: ra2085/saiku
  public SaikuQuery createNewOlapQuery(String queryName, SaikuCube cube) {
    try {
      Cube cub = olapDiscoverService.getNativeCube(cube);
      OlapConnection con = olapDiscoverService.getNativeConnection(cube.getConnectionName());

      if (cub != null) {
        IQuery query = new OlapQuery(new Query(queryName, cub), con, cube);
        putIQuery(queryName, query);
        return ObjectUtil.convert(query);
      }
    } catch (Exception e) {
      log.error("Cannot create new query for cube :" + cube, e);
    }
    return null;
  }