实例介绍
saiku源码,Saiku是一个模块化分析套件,提供轻量级OLAP,易于嵌入,可扩展和可配置。Saiku RESTful服务器连接到现有的OLAP系统,通过我们基于轻量级JQuery的前端为用户友好,直观的分析提供支持。
【实例截图】
【核心代码】
1b900465-097e-4bb5-b302-3e21336f84f1
└── saiku-saiku-3.6
├── charm
│ └── trusty
│ └── saikuanalytics
│ ├── config.yaml
│ ├── hooks
│ │ ├── config-changed
│ │ ├── install
│ │ ├── start
│ │ ├── stop
│ │ └── website-relation-joined
│ ├── icon.svg
│ ├── metadata.yaml
│ ├── README
│ ├── templates
│ │ └── upstart.conf
│ ├── tests
│ │ ├── 00-setup
│ │ └── 10-deploy
│ └── unit_tests
│ └── test_actions.py
├── CONTRIBUTING.md
├── exporter
│ └── export.sh
├── LICENSE
├── pentaho_checkStyle.xml
├── pom.xml
├── README.md
├── saiku
├── saiku-bi-platform-plugin
│ ├── addplugins.patch
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ │ └── org
│ │ └── saiku
│ │ └── plugin
│ │ ├── CustomRole.java
│ │ ├── EnunciateJerseyPluginServlet.java
│ │ ├── MutableServletConfig.java
│ │ ├── PentahoDatasourceManager.java
│ │ ├── PentahoDataSourceResolver.java
│ │ ├── PentahoSecurityAwareConnectionManager.java
│ │ ├── PentahoSessionService.java
│ │ ├── resources
│ │ │ ├── PentahoFilterRepositoryResource.java
│ │ │ ├── PentahoRepositoryResource2.java
│ │ │ ├── PentahoTagRepositoryResource.java
│ │ │ ├── PluginResource.java
│ │ │ └── SavedQuery.java
│ │ ├── SaikuContentTypeMetaProvider.java
│ │ ├── SaikuPluginLifecycleListener.java
│ │ ├── ServletAdapterContentGenerator.java
│ │ └── util
│ │ ├── packager
│ │ │ ├── Concatenate.java
│ │ │ ├── CSSMin.java
│ │ │ ├── JSMin.java
│ │ │ └── Packager.java
│ │ ├── PentahoDatasourceProcessor.java
│ │ ├── PentahoUniqueDatasourceProcessor.java
│ │ ├── PluginConfig.java
│ │ └── ResourceManager.java
│ └── plugin
│ ├── components
│ │ └── saikuWidget
│ │ ├── component.xml
│ │ └── SaikuWidgetComponent.js
│ ├── lib
│ │ └── saiku.properties
│ ├── plugin.spring.xml
│ ├── plugin.xml
│ ├── README
│ ├── saikuplugin.properties
│ ├── saikuplugin_supported_languages.properties
│ ├── saiku-repository
│ │ └── README
│ ├── saiku-shareMondrian.sh
│ ├── settings.xml
│ ├── ui
│ │ └── config
│ │ └── config.json
│ └── version.xml
├── saiku-bi-platform-plugin-p5
│ ├── addplugins.patch
│ ├── pom.xml
│ ├── saiku-bi-platform-plugin.iml
│ └── src
│ └── main
│ ├── java
│ │ └── org
│ │ └── saiku
│ │ └── plugin
│ │ ├── CustomRole.java
│ │ ├── PentahoDatasourceManager.java
│ │ ├── PentahoDataSourceResolver.java
│ │ ├── PentahoSecurityAwareConnectionManager.java
│ │ ├── PentahoSessionService.java
│ │ ├── resources
│ │ │ ├── ExtendedJAXRSPluginServlet.java
│ │ │ ├── PentahoDatasourceResource.java
│ │ │ ├── PentahoDiscoverResource.java
│ │ │ ├── PentahoExporterResource.java
│ │ │ ├── PentahoFilterRepositoryResource.java
│ │ │ ├── PentahoLicenseResource.java
│ │ │ ├── PentahoQueryResource.java
│ │ │ ├── PentahoRepositoryResource2.java
│ │ │ ├── PentahoSessionResource.java
│ │ │ ├── PentahoStatisticsResource.java
│ │ │ ├── PentahoTagRepositoryResource.java
│ │ │ └── PluginResource.java
│ │ ├── SaikuContentTypeMetaProvider.java
│ │ ├── SaikuPluginLifecycleListener.java
│ │ └── util
│ │ ├── packager
│ │ │ ├── Concatenate.java
│ │ │ ├── CSSMin.java
│ │ │ ├── JSMin.java
│ │ │ └── Packager.java
│ │ ├── PentahoAuditHelper.java
│ │ ├── PentahoUniqueDatasourceProcessor.java
│ │ ├── PluginConfig.java
│ │ ├── ResourceManager.java
│ │ └── SaikuReadyOlapConnection.java
│ ├── patches
│ │ └── newpatch.patch
│ └── plugin
│ ├── components
│ │ └── saikuWidget
│ │ ├── component.xml
│ │ └── SaikuWidgetComponent.js
│ ├── lib
│ │ └── saiku.properties
│ ├── plugin.spring.xml
│ ├── plugin.xml
│ ├── README
│ ├── saikuplugin.properties
│ ├── saikuplugin_supported_languages.properties
│ ├── saiku-repository
│ │ └── README
│ ├── saiku-shareMondrian.sh
│ ├── settings.xml
│ └── version.xml
├── saiku-core
│ ├── pom.xml
│ ├── README
│ ├── saiku-olap-util
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ └── java
│ │ └── mondrian
│ │ ├── olap4j
│ │ │ └── SaikuMondrianHelper.java
│ │ └── rolap
│ │ └── DimensionLookup.java
│ ├── saiku-service
│ │ ├── connection.properties
│ │ ├── pom.xml
│ │ └── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ ├── mondrian
│ │ │ │ │ └── olap4j
│ │ │ │ │ ├── Checker.java
│ │ │ │ │ ├── LevelInterface.java
│ │ │ │ │ └── package-info.java
│ │ │ │ └── org
│ │ │ │ └── saiku
│ │ │ │ ├── Activator.java
│ │ │ │ ├── ArrayMapDeserializer.java
│ │ │ │ ├── audit
│ │ │ │ │ └── SaikuAuditHelper.java
│ │ │ │ ├── database
│ │ │ │ │ ├── dao
│ │ │ │ │ │ ├── RoleDAOImpl.java
│ │ │ │ │ │ ├── RoleDAO.java
│ │ │ │ │ │ ├── UserDAOImpl.java
│ │ │ │ │ │ └── UserDAO.java
│ │ │ │ │ ├── Database.java
│ │ │ │ │ ├── dto
│ │ │ │ │ │ ├── MondrianSchema.java
│ │ │ │ │ │ ├── Role.java
│ │ │ │ │ │ ├── SaikuUser.java
│ │ │ │ │ │ └── User.java
│ │ │ │ │ └── JdbcUserDAO.java
│ │ │ │ ├── datasources
│ │ │ │ │ ├── connection
│ │ │ │ │ │ ├── AbstractConnectionManager.java
│ │ │ │ │ │ ├── encrypt
│ │ │ │ │ │ │ ├── CryptoUtil.java
│ │ │ │ │ │ │ ├── Des.java
│ │ │ │ │ │ │ ├── SecureDataSourceFactory.java
│ │ │ │ │ │ │ └── TripleDesPasswordEncoder.java
│ │ │ │ │ │ ├── IConnectionManager.java
│ │ │ │ │ │ ├── IConnectionProcessor.java
│ │ │ │ │ │ ├── ISaikuConnection.java
│ │ │ │ │ │ ├── MondrianVFS.java
│ │ │ │ │ │ ├── RepositoryFile.java
│ │ │ │ │ │ ├── RepositoryFileName.java
│ │ │ │ │ │ ├── RepositoryVfsFileContent.java
│ │ │ │ │ │ ├── RepositoryVfsFileObject.java
│ │ │ │ │ │ ├── SaikuConnectionFactory.java
│ │ │ │ │ │ ├── SaikuOlapConnection.java
│ │ │ │ │ │ └── SimpleConnectionManager.java
│ │ │ │ │ └── datasource
│ │ │ │ │ └── SaikuDatasource.java
│ │ │ │ ├── license
│ │ │ │ │ ├── AbstractLicense.java
│ │ │ │ │ ├── Base64Coder.java
│ │ │ │ │ ├── ILicense.java
│ │ │ │ │ ├── LicenseException.java
│ │ │ │ │ ├── LicenseUtils.java
│ │ │ │ │ ├── SaikuCounter.java
│ │ │ │ │ ├── SaikuLicense2.java
│ │ │ │ │ ├── SaikuLicense.java
│ │ │ │ │ └── UserQuota.java
│ │ │ │ ├── LicenseUtils.java
│ │ │ │ ├── log
│ │ │ │ │ └── LogExtractor.java
│ │ │ │ ├── olap
│ │ │ │ │ ├── discover
│ │ │ │ │ │ └── OlapMetaExplorer.java
│ │ │ │ │ ├── dto
│ │ │ │ │ │ ├── AbstractSaikuObject.java
│ │ │ │ │ │ ├── filter
│ │ │ │ │ │ │ └── SaikuFilter.java
│ │ │ │ │ │ ├── ISaikuObject.java
│ │ │ │ │ │ ├── resultset
│ │ │ │ │ │ │ ├── AbstractBaseCell.java
│ │ │ │ │ │ │ ├── CellDataSet.java
│ │ │ │ │ │ │ ├── DataCell.java
│ │ │ │ │ │ │ ├── Matrix.java
│ │ │ │ │ │ │ └── MemberCell.java
│ │ │ │ │ │ ├── SaikuAxis.java
│ │ │ │ │ │ ├── SaikuCatalog.java
│ │ │ │ │ │ ├── SaikuConnection.java
│ │ │ │ │ │ ├── SaikuCube.java
│ │ │ │ │ │ ├── SaikuCubeMetadata.java
│ │ │ │ │ │ ├── SaikuDimension.java
│ │ │ │ │ │ ├── SaikuDimensionSelection.java
│ │ │ │ │ │ ├── SaikuHierarchy.java
│ │ │ │ │ │ ├── SaikuLevel.java
│ │ │ │ │ │ ├── SaikuMeasure.java
│ │ │ │ │ │ ├── SaikuMember.java
│ │ │ │ │ │ ├── SaikuQuery.java
│ │ │ │ │ │ ├── SaikuSchema.java
│ │ │ │ │ │ ├── SaikuSelection.java
│ │ │ │ │ │ ├── SaikuTag.java
│ │ │ │ │ │ ├── SaikuTuple.java
│ │ │ │ │ │ ├── SimpleCubeElement.java
│ │ │ │ │ │ └── SimpleMember.java
│ │ │ │ │ ├── query
│ │ │ │ │ │ ├── IQuery.java
│ │ │ │ │ │ ├── MdxQuery.java
│ │ │ │ │ │ ├── OlapQuery.java
│ │ │ │ │ │ ├── QueryDeserializer.java
│ │ │ │ │ │ ├── QueryProperties.java
│ │ │ │ │ │ └── QuerySerializer.java
│ │ │ │ │ ├── query2
│ │ │ │ │ │ ├── common
│ │ │ │ │ │ │ ├── AbstractThinQuerySet.java
│ │ │ │ │ │ │ ├── AbstractThinSortableQuerySet.java
│ │ │ │ │ │ │ ├── ThinQuerySet.java
│ │ │ │ │ │ │ ├── ThinSortableQuerySet.java
│ │ │ │ │ │ │ └── TqUtil.java
│ │ │ │ │ │ ├── filter
│ │ │ │ │ │ │ ├── ThinFilter.java
│ │ │ │ │ │ │ ├── ThinGenericFilter.java
│ │ │ │ │ │ │ ├── ThinNameFilter.java
│ │ │ │ │ │ │ └── ThinNFilter.java
│ │ │ │ │ │ ├── Parameterizable.java
│ │ │ │ │ │ ├── Parameter.java
│ │ │ │ │ │ ├── ThinAxis.java
│ │ │ │ │ │ ├── ThinCalculatedMeasure.java
│ │ │ │ │ │ ├── ThinCalculatedMember.java
│ │ │ │ │ │ ├── ThinDetails.java
│ │ │ │ │ │ ├── ThinHierarchy.java
│ │ │ │ │ │ ├── ThinLevel.java
│ │ │ │ │ │ ├── ThinMeasure.java
│ │ │ │ │ │ ├── ThinMember.java
│ │ │ │ │ │ ├── ThinQuery.java
│ │ │ │ │ │ ├── ThinQueryModel.java
│ │ │ │ │ │ ├── ThinSelection.java
│ │ │ │ │ │ └── util
│ │ │ │ │ │ ├── Fat.java
│ │ │ │ │ │ ├── ServiceUtil.java
│ │ │ │ │ │ └── Thin.java
│ │ │ │ │ └── util
│ │ │ │ │ ├── exception
│ │ │ │ │ │ ├── QueryParseException.java
│ │ │ │ │ │ ├── SaikuIncompatibleException.java
│ │ │ │ │ │ └── SaikuOlapException.java
│ │ │ │ │ ├── formatter
│ │ │ │ │ │ ├── CellSetFormatterFactory.java
│ │ │ │ │ │ ├── CellSetFormatter.java
│ │ │ │ │ │ ├── FlattenedCellSetFormatter.java
│ │ │ │ │ │ ├── HierarchicalCellSetFormatter.java
│ │ │ │ │ │ └── ICellSetFormatter.java
│ │ │ │ │ ├── ObjectUtil.java
│ │ │ │ │ ├── OlapResultSetUtil.java
│ │ │ │ │ ├── QueryConverter.java
│ │ │ │ │ ├── SaikuCubeCaptionComparator.java
│ │ │ │ │ ├── SaikuDefaultXmlaServlet.java
│ │ │ │ │ ├── SaikuDimensionCaptionComparator.java
│ │ │ │ │ ├── SaikuMemberCaptionComparator.java
│ │ │ │ │ ├── SaikuObjectComparator.java
│ │ │ │ │ ├── SaikuProperties.java
│ │ │ │ │ ├── SaikuUniqueNameComparator.java
│ │ │ │ │ └── SaikuXmlaServlet.java
│ │ │ │ ├── repository
│ │ │ │ │ ├── Acl2.java
│ │ │ │ │ ├── AclEntry.java
│ │ │ │ │ ├── AclMethod.java
│ │ │ │ │ ├── AclType.java
│ │ │ │ │ ├── DataSource.java
│ │ │ │ │ ├── IRepositoryManager.java
│ │ │ │ │ ├── IRepositoryObject.java
│ │ │ │ │ ├── JackRabbitRepositoryManager.java
│ │ │ │ │ ├── RepositoryFileObject.java
│ │ │ │ │ ├── RepositoryFolderObject.java
│ │ │ │ │ ├── SaikuDavResourceImpl.java
│ │ │ │ │ ├── SaikuSessionProvider.java
│ │ │ │ │ └── SaikuWebdavServlet.java
│ │ │ │ ├── service
│ │ │ │ │ ├── AnonymousSessionService.java
│ │ │ │ │ ├── datasource
│ │ │ │ │ │ ├── ClassPathResourceDatasourceManager.java
│ │ │ │ │ │ ├── DatasourceService.java
│ │ │ │ │ │ ├── IDatasourceManager.java
│ │ │ │ │ │ ├── IDatasourceProcessor.java
│ │ │ │ │ │ └── RepositoryDatasourceManager.java
│ │ │ │ │ ├── importer
│ │ │ │ │ │ ├── LegacyImporterImpl.java
│ │ │ │ │ │ └── LegacyImporter.java
│ │ │ │ │ ├── ISessionService.java
│ │ │ │ │ ├── olap
│ │ │ │ │ │ ├── OlapDiscoverService.java
│ │ │ │ │ │ ├── OlapQueryService.java
│ │ │ │ │ │ ├── ThinQueryService.java
│ │ │ │ │ │ └── totals
│ │ │ │ │ │ ├── aggregators
│ │ │ │ │ │ │ ├── AvgAggregator.java
│ │ │ │ │ │ │ ├── MaxAggregator.java
│ │ │ │ │ │ │ ├── MinAggregator.java
│ │ │ │ │ │ │ ├── SumAggregator.java
│ │ │ │ │ │ │ └── TotalAggregator.java
│ │ │ │ │ │ ├── AxisInfo.java
│ │ │ │ │ │ ├── FormatList.java
│ │ │ │ │ │ ├── TotalNode.java
│ │ │ │ │ │ └── TotalsListsBuilder.java
│ │ │ │ │ ├── PlatformUtilsService.java
│ │ │ │ │ ├── user
│ │ │ │ │ │ ├── IUserManager.java
│ │ │ │ │ │ └── UserService.java
│ │ │ │ │ └── util
│ │ │ │ │ ├── dto
│ │ │ │ │ │ ├── Plugin.java
│ │ │ │ │ │ └── User.java
│ │ │ │ │ ├── exception
│ │ │ │ │ │ ├── SaikuDataSourceException.java
│ │ │ │ │ │ ├── SaikuDataSourceNotFoundException.java
│ │ │ │ │ │ └── SaikuServiceException.java
│ │ │ │ │ ├── export
│ │ │ │ │ │ ├── CsvExporter.java
│ │ │ │ │ │ ├── excel
│ │ │ │ │ │ │ ├── ExcelBuilderOptions.java
│ │ │ │ │ │ │ ├── ExcelMergedRegionItemConfig.java
│ │ │ │ │ │ │ ├── ExcelWorksheetBuilder.java
│ │ │ │ │ │ │ └── FormatUtil.java
│ │ │ │ │ │ ├── ExcelExporter.java
│ │ │ │ │ │ ├── PdfPerformanceLogger.java
│ │ │ │ │ │ └── ResultSetHelper.java
│ │ │ │ │ ├── ISaikuQuery.java
│ │ │ │ │ ├── KeyValue.java
│ │ │ │ │ ├── MondrianDictionary.java
│ │ │ │ │ ├── ObjectHolder.java
│ │ │ │ │ ├── OlapUtil.java
│ │ │ │ │ ├── QueryContext.java
│ │ │ │ │ └── security
│ │ │ │ │ ├── FileBackedPasswordProvider.java
│ │ │ │ │ ├── PasswordProvider.java
│ │ │ │ │ └── SimplePasswordProvider.java
│ │ │ │ └── UserDAO.java
│ │ │ └── resources
│ │ │ ├── org
│ │ │ │ └── saiku
│ │ │ │ └── service
│ │ │ │ └── util
│ │ │ │ └── export
│ │ │ │ └── excel
│ │ │ │ └── css-colors-codes.properties
│ │ │ └── OSGI-INF
│ │ │ └── blueprint
│ │ │ └── blueprint.xml
│ │ └── test
│ │ ├── java
│ │ │ └── org
│ │ │ └── saiku
│ │ │ ├── datasource
│ │ │ │ ├── DataSteps.java
│ │ │ │ └── OlapDataSourceStepsdef.java
│ │ │ ├── helper
│ │ │ │ └── DatabaseHelper.java
│ │ │ ├── JBehaveTestCase.java
│ │ │ ├── olap
│ │ │ │ └── discover
│ │ │ │ └── OlapMetaExplorerTest.java
│ │ │ ├── OlapCubeStepsDef.java
│ │ │ ├── repository
│ │ │ │ ├── JackrabbitRepositoryDef.java
│ │ │ │ └── JackrabbitSteps.java
│ │ │ ├── service
│ │ │ │ ├── MockQuery.java
│ │ │ │ ├── olap
│ │ │ │ │ └── ThinQueryServiceTest.java
│ │ │ │ └── util
│ │ │ │ └── security
│ │ │ │ └── FileBackedPasswordProviderTest.java
│ │ │ ├── TestSaikuContext.java
│ │ │ └── TestUtil.java
│ │ └── resources
│ │ ├── datasource.txt
│ │ ├── FoodMart4.xml
│ │ ├── FoodMart.xml
│ │ ├── log4j.xml
│ │ ├── org
│ │ │ └── saiku
│ │ │ ├── connection.properties
│ │ │ └── repo-conf
│ │ ├── queries
│ │ │ ├── dummy.json
│ │ │ ├── mdx1.json
│ │ │ ├── parameter1.json
│ │ │ └── query1.json
│ │ ├── repo-conf.xml
│ │ ├── sample-mdx.saiku
│ │ └── stories
│ │ ├── datasources
│ │ │ ├── olapcubes
│ │ │ │ └── lookup_cubes.story
│ │ │ └── olapdatasources
│ │ │ └── lookup_datasources.story
│ │ └── repository
│ │ ├── content
│ │ │ ├── create_datasource.story
│ │ │ ├── create_saved_query.story
│ │ │ └── create_schema.story
│ │ ├── folders
│ │ │ ├── create_folder.story
│ │ │ ├── delete_folder.story
│ │ │ └── move_folder.story
│ │ ├── initialization
│ │ │ ├── start_repository.story
│ │ │ └── stop_repository.story
│ │ └── transfer
│ │ ├── bulkload.story
│ │ └── export_repo.story
│ └── saiku-web
│ ├── pom.xml
│ └── src
│ ├── main
│ │ ├── java
│ │ │ └── org
│ │ │ └── saiku
│ │ │ └── web
│ │ │ ├── core
│ │ │ │ ├── RoleDatasourceProcessor.java
│ │ │ │ └── SecurityAwareConnectionManager.java
│ │ │ ├── export
│ │ │ │ ├── DomConverter.java
│ │ │ │ ├── FoConverter.java
│ │ │ │ ├── JSConverter.java
│ │ │ │ └── PdfReport.java
│ │ │ ├── rest
│ │ │ │ ├── objects
│ │ │ │ │ ├── ConnectionType.java
│ │ │ │ │ ├── DataSourceMapper.java
│ │ │ │ │ ├── MdxQueryObject.java
│ │ │ │ │ ├── resultset
│ │ │ │ │ │ ├── Cell.java
│ │ │ │ │ │ ├── QueryResult.java
│ │ │ │ │ │ └── Total.java
│ │ │ │ │ ├── SavedQuery.java
│ │ │ │ │ ├── SelectionListRestObject.java
│ │ │ │ │ ├── SelectionRestObject.java
│ │ │ │ │ └── UserList.java
│ │ │ │ ├── resources
│ │ │ │ │ ├── AdminResource.java
│ │ │ │ │ ├── BasicRepositoryResource2.java
│ │ │ │ │ ├── BasicTagRepositoryResource.java
│ │ │ │ │ ├── DataSourceResource.java
│ │ │ │ │ ├── ExporterResource.java
│ │ │ │ │ ├── FilterRepositoryResource.java
│ │ │ │ │ ├── InfoResource.java
│ │ │ │ │ ├── ISaikuRepository.java
│ │ │ │ │ ├── License.java
│ │ │ │ │ ├── MondrianStats.java
│ │ │ │ │ ├── OlapDiscoverResource.java
│ │ │ │ │ ├── Query2Resource.java
│ │ │ │ │ ├── QueryResource.java
│ │ │ │ │ ├── SessionResource.java
│ │ │ │ │ └── StatisticsResource.java
│ │ │ │ └── util
│ │ │ │ ├── GrantedAuth.java
│ │ │ │ ├── PreAuthExample.java
│ │ │ │ ├── RestUtil.java
│ │ │ │ ├── ServletUtil.java
│ │ │ │ └── StartupResource.java
│ │ │ ├── service
│ │ │ │ └── SessionService.java
│ │ │ └── svg
│ │ │ ├── Converter.java
│ │ │ ├── PdfReport.java
│ │ │ └── ReportData.java
│ │ └── resources
│ │ └── org
│ │ └── saiku
│ │ └── web
│ │ ├── export
│ │ │ ├── env.rhino.js
│ │ │ ├── jquery.js
│ │ │ ├── jquery.min.js
│ │ │ ├── json2.js
│ │ │ ├── SaikuRenderer.js
│ │ │ ├── saiku.table.full.css
│ │ │ ├── saiku.table.pdf.css
│ │ │ ├── SaikuTableRenderer.js
│ │ │ ├── underscore.js
│ │ │ └── xhtml2fo.xsl
│ │ ├── rest
│ │ │ └── resources
│ │ │ └── version.properties
│ │ └── svg
│ │ └── watermark.png
│ ├── oldtest
│ │ ├── java
│ │ │ └── org
│ │ │ └── saiku
│ │ │ └── web
│ │ │ └── rest
│ │ │ └── resources
│ │ │ ├── DummyDatasourceProcessor.java
│ │ │ └── QueryResourceTest.java
│ │ └── resources
│ │ ├── foodmart
│ │ │ └── foodmart.properties
│ │ ├── org
│ │ │ └── saiku
│ │ │ └── web
│ │ │ └── rest
│ │ │ └── resources
│ │ │ ├── saiku-beans.xml
│ │ │ ├── SampleData.mondrian.xml
│ │ │ ├── sampledata.sql
│ │ │ └── test.properties.xml
│ │ ├── saiku-datasources
│ │ │ └── TestConnection1
│ │ └── saiku-repository
│ └── test
│ └── resources
│ └── saiku-datasources
│ └── TestConnection1
├── saiku-legal
│ └── SaikuJCAtoPaul.doc
├── saiku-repository
│ ├── asdf.saiku
│ ├── mdx.saiku
│ ├── README
│ └── test
│ └── asdf.saiku
├── saiku-server
│ ├── pom.xml
│ ├── scripts
│ │ ├── debug-start-saiku.bat
│ │ ├── debug-start-saiku.sh
│ │ ├── LICENSE
│ │ ├── README
│ │ ├── RELEASE_NOTES
│ │ ├── set-java.bat
│ │ ├── set-java.sh
│ │ ├── start-saiku.bat
│ │ ├── start-saiku.sh
│ │ ├── stop-saiku.bat
│ │ └── stop-saiku.sh
│ └── tomcat
│ ├── apache-tomcat-6.0.24.zip
│ ├── apache-tomcat-7.0.62.zip
│ └── apache-tomcat-8.0.18.zip
├── saiku-service-osgi
│ ├── pom.xml
│ └── src
│ └── main
│ ├── assembly
│ │ └── felix.xml
│ ├── java
│ │ └── bi
│ │ └── meteorite
│ │ └── Activator.java
│ └── resources
│ └── OSGI-INF
│ └── blueprint
│ ├── bundle-context-osgi.xml
│ └── bundle-context.xml
├── saiku-ui
│ ├── ajaxtest.html
│ ├── CONTRIBUTING.md
│ ├── css
│ │ ├── blueprint
│ │ │ └── src
│ │ │ ├── forms.css
│ │ │ ├── grid.css
│ │ │ ├── ie.css
│ │ │ ├── print.css
│ │ │ ├── reset.css
│ │ │ └── typography.css
│ │ ├── jquery
│ │ │ ├── images
│ │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png
│ │ │ │ ├── ui-bg_flat_75_ffffff_40x100.png
│ │ │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png
│ │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png
│ │ │ │ ├── ui-bg_glass_75_dadada_1x400.png
│ │ │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png
│ │ │ │ ├── ui-bg_glass_95_fef1ec_1x400.png
│ │ │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png
│ │ │ │ ├── ui-icons_222222_256x240.png
│ │ │ │ ├── ui-icons_2e83ff_256x240.png
│ │ │ │ ├── ui-icons_454545_256x240.png
│ │ │ │ ├── ui-icons_888888_256x240.png
│ │ │ │ └── ui-icons_cd0a0a_256x240.png
│ │ │ ├── jquery-ui.css
│ │ │ └── spectrum.css
│ │ └── saiku
│ │ └── src
│ │ ├── cssoverride.css
│ │ ├── giveitsomestyle.css
│ │ ├── saiku.dropzone.css
│ │ ├── saiku.table.css
│ │ └── styles.css
│ ├── embed
│ │ ├── bootstrap3.html
│ │ ├── embed.html
│ │ ├── favicon.ico
│ │ ├── images
│ │ │ ├── arrow-down.gif
│ │ │ ├── arrow-none.gif
│ │ │ └── arrow-up.gif
│ │ └── saiku.css
│ ├── favicon.ico
│ ├── forward.html
│ ├── Gruntfile.js
│ ├── images
│ │ ├── arrow-down.gif
│ │ ├── arrow-none.gif
│ │ ├── arrow-up.gif
│ │ ├── chart
│ │ │ ├── 100bar.png
│ │ │ ├── area2.png
│ │ │ ├── area.png
│ │ │ ├── bar.png
│ │ │ ├── dot.png
│ │ │ ├── gray
│ │ │ │ ├── 100bar.png
│ │ │ │ ├── area2.png
│ │ │ │ ├── area.png
│ │ │ │ ├── bar.png
│ │ │ │ ├── dot.png
│ │ │ │ ├── heat.png
│ │ │ │ ├── line.png
│ │ │ │ ├── multiple.png
│ │ │ │ ├── multiplesunburst.png
│ │ │ │ ├── pie.png
│ │ │ │ ├── stackedbar.png
│ │ │ │ ├── sunburst.png
│ │ │ │ ├── treemap.png
│ │ │ │ ├── trendbars.png
│ │ │ │ ├── trendline.png
│ │ │ │ └── waterfall.png
│ │ │ ├── heat.png
│ │ │ ├── line.png
│ │ │ ├── multiple.png
│ │ │ ├── multiplesunburst.png
│ │ │ ├── pie.png
│ │ │ ├── stackedbar.png
│ │ │ ├── sunburst.png
│ │ │ ├── treemap.png
│ │ │ ├── trendbars.png
│ │ │ ├── trendline.png
│ │ │ └── waterfall.png
│ │ ├── sprite.png
│ │ └── src
│ │ ├── admin_console.png
│ │ ├── admin.png
│ │ ├── arrow_in.png
│ │ ├── arrow_refresh_bnw.png
│ │ ├── arrow_refresh.png
│ │ ├── arrow_up_bnw.png
│ │ ├── auto.png
│ │ ├── bullet_blue.png
│ │ ├── bullet_green.png
│ │ ├── bullet_red.png
│ │ ├── button_blank.png
│ │ ├── button_cog_off.png
│ │ ├── button_cog_on.png
│ │ ├── button_help.png
│ │ ├── button_pdf.png
│ │ ├── cancel3.png
│ │ ├── ccc3.png
│ │ ├── context_down.png
│ │ ├── csv.png
│ │ ├── delete.png
│ │ ├── dialog_login.png
│ │ ├── dialog_login_red.png
│ │ ├── drillthrough.png
│ │ ├── excel.png
│ │ ├── export_drillthrough.png
│ │ ├── fields.png
│ │ ├── filter.png
│ │ ├── folder_add.png
│ │ ├── folder_edit.png
│ │ ├── folder.png
│ │ ├── group_edit.png
│ │ ├── help.png
│ │ ├── hide_parents.png
│ │ ├── information.png
│ │ ├── logo.png
│ │ ├── logo_red.png
│ │ ├── mac.png
│ │ ├── main_toolbar_bug.png
│ │ ├── main_toolbar_doc_plus.png
│ │ ├── main_toolbar_folder.png
│ │ ├── main_toolbar_info.png
│ │ ├── main_toolbar_on_off.png
│ │ ├── main_toolbar_schema_designer.png
│ │ ├── mdx.png
│ │ ├── meteorite_free.png
│ │ ├── non.png
│ │ ├── option_off.png
│ │ ├── option_on.png
│ │ ├── page_white_compressed.png
│ │ ├── page_white.png
│ │ ├── pencil.png
│ │ ├── query_scenario.png
│ │ ├── README
│ │ ├── run.png
│ │ ├── saiku_120.png
│ │ ├── saiku_16.png
│ │ ├── saiku_16x16.png
│ │ ├── saiku_32.png
│ │ ├── saiku_32x32.png
│ │ ├── saiku.png
│ │ ├── saikux2.png
│ │ ├── save.png
│ │ ├── sort_down.png
│ │ ├── sort_none.png
│ │ ├── sort_up.png
│ │ ├── swap.png
│ │ ├── switch_to_mdx.png
│ │ ├── table2.png
│ │ ├── table_across.png
│ │ ├── table.png
│ │ ├── tabs_cross_off.png
│ │ ├── tabs_cross_on.png
│ │ ├── toolbar_delete.png
│ │ ├── toolbar_error.png
│ │ ├── toolbar_help.png
│ │ ├── toolbar_info.png
│ │ ├── toolbar_logout.png
│ │ ├── toolbar_message.png
│ │ ├── toolbar_new.png
│ │ ├── toolbar_open.png
│ │ ├── toolbar_save.png
│ │ ├── tree_collapsed.png
│ │ ├── tree_dimension.png
│ │ ├── tree_expand.png
│ │ ├── tree_folder_collapsed.png
│ │ ├── tree_folder_expand.png
│ │ ├── tree_measure.png
│ │ ├── waiting.gif
│ │ └── zoom.png
│ ├── index.html
│ ├── js
│ │ ├── ace
│ │ │ ├── ace.js
│ │ │ ├── ext-keybinding_menu.js
│ │ │ ├── ext-options.js
│ │ │ ├── ext-searchbox.js
│ │ │ ├── ext-static_highlight.js
│ │ │ ├── ext-textarea.js
│ │ │ ├── keybinding-emacs.js
│ │ │ ├── keybinding-vim.js
│ │ │ ├── mode-text.js
│ │ │ ├── theme-chrome.js
│ │ │ ├── theme-clouds.js
│ │ │ ├── theme-crimson_editor.js
│ │ │ ├── theme-github.js
│ │ │ └── theme-textmate.js
│ │ ├── backbone
│ │ │ ├── backbone.js
│ │ │ ├── backbone-model-file-upload.js
│ │ │ ├── backbone_old.js
│ │ │ ├── json2.js
│ │ │ └── underscore.js
│ │ ├── externs
│ │ │ ├── backbone_externs.js
│ │ │ ├── jquery_externs.js
│ │ │ └── underscore_externs.js
│ │ ├── fancybox
│ │ │ ├── blank.gif
│ │ │ ├── fancybox_loading@2x.gif
│ │ │ ├── fancybox_loading.gif
│ │ │ ├── fancybox_overlay.png
│ │ │ ├── fancybox_sprite@2x.png
│ │ │ ├── fancybox_sprite.png
│ │ │ ├── helpers
│ │ │ │ ├── fancybox_buttons.png
│ │ │ │ ├── jquery.fancybox-buttons.css
│ │ │ │ ├── jquery.fancybox-buttons.js
│ │ │ │ ├── jquery.fancybox-media.js
│ │ │ │ ├── jquery.fancybox-thumbs.css
│ │ │ │ └── jquery.fancybox-thumbs.js
│ │ │ ├── jquery.fancybox.css
│ │ │ ├── jquery.fancybox.js
│ │ │ └── jquery.fancybox.pack.js
│ │ ├── fitvids
│ │ │ └── jquery.fitvids.js
│ │ ├── ga.js
│ │ ├── jquery
│ │ │ ├── jquery.blockUI.js
│ │ │ ├── jquery.contextMenu.css
│ │ │ ├── jquery.contextMenu.js
│ │ │ ├── jquery.min.js
│ │ │ ├── jquery-mobile-touch.js
│ │ │ ├── jquery-ui-1.10.3.custom.js
│ │ │ ├── jquery-ui.min.js
│ │ │ ├── qunit.css
│ │ │ ├── qunit.js
│ │ │ └── spectrum.js
│ │ ├── logger
│ │ │ ├── janky.post.min.js
│ │ │ └── Logger.js
│ │ ├── notify
│ │ │ ├── notify.min.js
│ │ │ └── styles
│ │ │ ├── bootstrap
│ │ │ │ └── notify-bootstrap.js
│ │ │ └── metro
│ │ │ ├── notify-metro.css
│ │ │ └── notify-metro.js
│ │ ├── saiku
│ │ │ ├── adapters
│ │ │ │ └── SaikuServer.js
│ │ │ ├── embed
│ │ │ │ └── SaikuEmbed.js
│ │ │ ├── models
│ │ │ │ ├── DateFilter.js
│ │ │ │ ├── Dimension.js
│ │ │ │ ├── License.js
│ │ │ │ ├── Member.js
│ │ │ │ ├── Plugin.js
│ │ │ │ ├── QueryAction.js
│ │ │ │ ├── Query.js
│ │ │ │ ├── QueryScenario.js
│ │ │ │ ├── Repository.js
│ │ │ │ ├── Result.js
│ │ │ │ ├── SaikuOlapQuery.js
│ │ │ │ ├── Session.js
│ │ │ │ ├── SessionWorkspace.js
│ │ │ │ └── Settings.js
│ │ │ ├── plugins
│ │ │ │ ├── AdminConsole
│ │ │ │ │ └── plugin.js
│ │ │ │ ├── BIServer
│ │ │ │ │ └── plugin.js
│ │ │ │ ├── Buckets
│ │ │ │ │ ├── plugin_disabled.js
│ │ │ │ │ ├── tag_blue_add.png
│ │ │ │ │ └── tag_red.png
│ │ │ │ ├── CCC_Chart
│ │ │ │ │ ├── _Base.js
│ │ │ │ │ ├── cccCharts.js
│ │ │ │ │ ├── cccProperties.ktr
│ │ │ │ │ ├── ChartEditor.js
│ │ │ │ │ ├── chart.png
│ │ │ │ │ ├── def.js
│ │ │ │ │ ├── jquery.tipsy.js
│ │ │ │ │ ├── plugin.js
│ │ │ │ │ ├── protovis.js
│ │ │ │ │ ├── protovis-msie.js
│ │ │ │ │ ├── pvc-d.js
│ │ │ │ │ ├── pvc.js
│ │ │ │ │ ├── tipsy.css
│ │ │ │ │ ├── tipsy.gif
│ │ │ │ │ └── tipsy.js
│ │ │ │ ├── ChangeLocale
│ │ │ │ │ ├── help.txt
│ │ │ │ │ ├── images
│ │ │ │ │ │ └── change_locale.png
│ │ │ │ │ └── plugin.js
│ │ │ │ ├── filters
│ │ │ │ │ ├── filterconfig.js
│ │ │ │ │ ├── plugin_disabled.js
│ │ │ │ │ ├── tag_blue_add.png
│ │ │ │ │ ├── tag_blue_edit.png
│ │ │ │ │ └── tag_red.png
│ │ │ │ ├── Fullscreen
│ │ │ │ │ ├── fullscreen.png
│ │ │ │ │ └── plugin.js
│ │ │ │ ├── I18n
│ │ │ │ │ ├── plugin.js
│ │ │ │ │ └── po
│ │ │ │ │ ├── cn.json
│ │ │ │ │ ├── cs.json
│ │ │ │ │ ├── de.json
│ │ │ │ │ ├── en.json
│ │ │ │ │ ├── es.json
│ │ │ │ │ ├── fr.json
│ │ │ │ │ ├── hr.json
│ │ │ │ │ ├── hu.json
│ │ │ │ │ ├── it.json
│ │ │ │ │ ├── ko.json
│ │ │ │ │ ├── lt.json
│ │ │ │ │ ├── nb.json
│ │ │ │ │ ├── nl.json
│ │ │ │ │ ├── pl.json
│ │ │ │ │ ├── pt.json
│ │ │ │ │ └── ru.json
│ │ │ │ └── Statistics
│ │ │ │ ├── plugin.js
│ │ │ │ └── sigma.png
│ │ │ ├── render
│ │ │ │ ├── SaikuChartRenderer.js
│ │ │ │ ├── SaikuRenderer.js
│ │ │ │ └── SaikuTableRenderer.js
│ │ │ ├── routers
│ │ │ │ └── QueryRouter.js
│ │ │ ├── Saiku.js
│ │ │ ├── Settings.js
│ │ │ ├── tests
│ │ │ │ └── TabTest.js
│ │ │ └── views
│ │ │ ├── AboutModal.js
│ │ │ ├── AddFolderModal.js
│ │ │ ├── CalculatedMemberModal.js
│ │ │ ├── CustomFilterModal.js
│ │ │ ├── DateFilterModal.js
│ │ │ ├── DeleteRepositoryObject.js
│ │ │ ├── DemoLoginForm.js
│ │ │ ├── DimensionList.js
│ │ │ ├── DrillAcrossModal.js
│ │ │ ├── DrillthroughModal.js
│ │ │ ├── FilterModal.js
│ │ │ ├── LoginForm.js
│ │ │ ├── MDXModal.js
│ │ │ ├── MeasuresModal.js
│ │ │ ├── Modal.js
│ │ │ ├── MoveRepositoryObject.js
│ │ │ ├── OpenDialog.js
│ │ │ ├── OpenQuery.js
│ │ │ ├── OverwriteModal.js
│ │ │ ├── PermissionsModal.js
│ │ │ ├── QueryToolbar.js
│ │ │ ├── SaveQuery.js
│ │ │ ├── SelectionsModal.js
│ │ │ ├── SessionErrorModal.js
│ │ │ ├── SplashScreen.js
│ │ │ ├── Tab.js
│ │ │ ├── Table.js
│ │ │ ├── TabSet.js
│ │ │ ├── TitlesModal.js
│ │ │ ├── Toolbar.js
│ │ │ ├── Upgrade.js
│ │ │ ├── WarningModal.js
│ │ │ ├── WorkspaceDropZone.js
│ │ │ ├── Workspace.js
│ │ │ └── WorkspaceToolbar.js
│ │ └── svgweb
│ │ ├── svg.htc
│ │ ├── svg.js
│ │ └── svg.swf
│ ├── LICENSE
│ ├── minify.patch
│ ├── package.json
│ ├── pom.xml
│ ├── README.md
│ ├── saikuFilesPath.json
│ ├── server.js
│ ├── upload.css
│ ├── upload.html
│ └── upload.js
├── saiku-webapp
│ ├── pom.xml
│ └── src
│ └── main
│ ├── servers
│ │ └── jetty
│ │ └── dev
│ │ └── webdefault.xml
│ └── webapp
│ ├── images
│ │ ├── bg.gif
│ │ └── header.jpg
│ ├── index.jsp
│ ├── login.jsp
│ ├── META-INF
│ │ └── context.xml
│ ├── style.css
│ └── WEB-INF
│ ├── applicationContext-saiku.xml
│ ├── applicationContext-security-ldap.properties
│ ├── applicationContext-spring-security-cas.xml
│ ├── applicationContext-spring-security-hibernate.properties
│ ├── applicationContext-spring-security-hibernate.xml
│ ├── applicationContext-spring-security-jdbc.xml
│ ├── applicationContext-spring-security-ldap.xml
│ ├── applicationContext-spring-security-memory.xml
│ ├── applicationContext-spring-security.xml
│ ├── applicationContext.xml
│ ├── classes
│ │ ├── legacy-datasources
│ │ │ └── README
│ │ ├── legacy-schema
│ │ │ └── README
│ │ ├── log4j.dtd
│ │ ├── log4j.xml
│ │ ├── mondrian.properties
│ │ ├── saiku.properties
│ │ └── saiku-repository
│ │ └── README
│ ├── config.xml
│ ├── database-queries.properties
│ ├── hibernate.cfg.xml
│ ├── saiku-beans.xml
│ ├── spring-servlet.xml
│ ├── users.properties
│ ├── weblogic.xml
│ └── web.xml
├── saiku-web-tests
│ ├── pom.xml
│ ├── README.md
│ └── src
│ ├── main
│ │ └── java
│ │ └── bi
│ │ └── meteorite
│ │ ├── pages
│ │ │ ├── DictionaryPage.java
│ │ │ ├── LoginPage.java
│ │ │ └── SaikuTable.java
│ │ └── steps
│ │ ├── EndUserSteps.java
│ │ └── UserSteps.java
│ └── test
│ ├── java
│ │ └── web
│ │ ├── AbstractTestSuite.java
│ │ ├── authentication
│ │ │ ├── CreateAuthenticationSteps.java
│ │ │ ├── CreateAuthenticationTestSuite.java
│ │ │ └── logout
│ │ │ ├── CreateAuthenticationSteps.java
│ │ │ └── CreateAuthenticationTestSuite.java
│ │ ├── JiraStoryLoader.java
│ │ ├── query
│ │ │ ├── close
│ │ │ │ ├── CreateQuerySteps.java
│ │ │ │ └── QueryRunnerTestSuite.java
│ │ │ ├── CreateQuerySteps.java
│ │ │ ├── filter
│ │ │ │ ├── CreateQuerySteps.java
│ │ │ │ └── QueryRunnerTestSuite.java
│ │ │ ├── multiple
│ │ │ │ ├── CreateQuerySteps.java
│ │ │ │ └── QueryRunnerTestSuite.java
│ │ │ ├── QueryRunnerTestSuite.java
│ │ │ └── roles
│ │ │ ├── CreateQuerySteps.java
│ │ │ └── QueryRunnerTestSuite.java
│ │ ├── repopermissions
│ │ │ ├── RepoRunnerTestSuite.java
│ │ │ └── RepoSteps.java
│ │ └── utils
│ │ └── SaikuStepFactory.java
│ └── resources
│ └── bi
│ └── meteorite
│ └── stories
│ └── consult_dictionary
│ └── create_authentication_test_suite.story
├── suppressions.xml
└── util
├── configuration.xml
├── Dockerfile
├── earthquakes.sql.zip
├── Earthquakes.xml
├── foodmart
├── FoodMart4.xml
├── foodmart_h2.sql.zip
├── foodmart_hsql.script
├── foodmart_hsql.script.zip
├── FoodMart.xml
├── foodmart.zip
├── saiku_initscript
└── sample_reports
├── average_mag_and_depth_over_time.saiku
├── average_magnitude_with_quakes.saiku
├── filtered_network_example.saiku
├── number_of_quakes_over_time.saiku
├── param_example.saiku
└── yoy_average_depth_vs_max_depth.saiku
278 directories, 834 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论