Package org.pentaho.metadata.model

Examples of org.pentaho.metadata.model.Domain


    if ( StringUtils.isEmpty( domainId ) ) {
      throw new IllegalArgumentException( messages.getErrorString(
          "PentahoMetadataDomainRepository.ERROR_0004_DOMAIN_ID_INVALID", domainId ) );
    }

    Domain domain = null;
    try {
      // Load the domain file
      final RepositoryFile file = getMetadataRepositoryFile( domainId );
      if ( file != null ) {
        SimpleRepositoryFileData data = repository.getDataForRead( file.getId(), SimpleRepositoryFileData.class );
        if ( data != null ) {
          domain = xmiParser.parseXmi( data.getStream() );
          domain.setId( domainId );
          logger.debug( "loaded domain" );

          // Load any I18N bundles
          loadLocaleStrings( domainId, domain );
          logger.debug( "loaded I18N bundles" );
View Full Code Here


      throw new IllegalArgumentException( messages
          .getErrorString( "PentahoMetadataDomainRepository.ERROR_0006_MODEL_ID_INVALID" ) );
    }

    // Get the domain and remove the model
    final Domain domain = getDomain( domainId );
    if ( null != domain ) {
      boolean found = false;
      final Iterator<LogicalModel> iter = domain.getLogicalModels().iterator();
      while ( iter.hasNext() ) {
        LogicalModel model = iter.next();
        if ( modelId.equals( model.getId() ) ) {
          iter.remove();
          found = true;
View Full Code Here

   *          domain to get from the repository
   * @return domain object
   */
  @Override
  public Domain getDomain( final String domainId ) {
    Domain domain = cache.get( domainId );
    if ( null == domain ) {
      domain = super.getDomain( domainId );
      if ( null != domain ) {
        cache.put( domainId, domain );
      }
View Full Code Here

    domainRepository.removeDomain( STEEL_WHEELS );
    domainRepository.removeDomain( SAMPLE_DOMAIN_ID );

    final MockDomain originalDomain = new MockDomain( SAMPLE_DOMAIN_ID );
    domainRepository.storeDomain( originalDomain, false );
    final Domain testDomain1 = domainRepository.getDomain( SAMPLE_DOMAIN_ID );
    assertNotNull( testDomain1 );
    assertEquals( SAMPLE_DOMAIN_ID, testDomain1.getId() );

    originalDomain.addLogicalModel( "MODEL 1" );
    originalDomain.addLogicalModel( "MODEL 2" );
    domainRepository.storeDomain( originalDomain, true );

    final Domain testDomain2 = domainRepository.getDomain( SAMPLE_DOMAIN_ID );
    assertNotNull( testDomain2 );
    final List<LogicalModel> logicalModels = testDomain2.getLogicalModels();
    assertEquals( 2, logicalModels.size() );
    assertTrue( "MODEL 1".equals( logicalModels.get( 0 ).getId() )
        || "MODEL 1".equals( logicalModels.get( 1 ).getId() ) );
    assertTrue( "MODEL 2".equals( logicalModels.get( 0 ).getId() )
        || "MODEL 2".equals( logicalModels.get( 1 ).getId() ) );
View Full Code Here

  }

  public void testLoadLocaleStrings() throws Exception {
    // Add a domain with no external locale information
    domainRepository.setXmiParser( new XmiParser() );
    final Domain steelWheels = loadDomain( STEEL_WHEELS, "./steel-wheels.xmi" );
    domainRepository.storeDomain( steelWheels, true );

    final int initialLocaleSize = steelWheels.getLocaleCodes().length;
    assertEquals( initialLocaleSize, steelWheels.getLocales().size() );
    domainRepository.loadLocaleStrings( STEEL_WHEELS, steelWheels );
    assertEquals( initialLocaleSize, steelWheels.getLocaleCodes().length );
    assertEquals( initialLocaleSize, steelWheels.getLocales().size() );

    final Properties newLocale = new Properties();
    newLocale.put( "[LogicalModel-BV_HUMAN_RESOURCES].[description]", "New Description in Italian" );
    domainRepository.addLocalizationFile( STEEL_WHEELS, "it_IT", newLocale );

    domainRepository.loadLocaleStrings( STEEL_WHEELS, steelWheels );
    final int newLocaleSize = initialLocaleSize + 1;
    assertEquals( newLocaleSize, steelWheels.getLocales().size() );
    domainRepository.loadLocaleStrings( STEEL_WHEELS, steelWheels );
    assertEquals( newLocaleSize, steelWheels.getLocaleCodes().length );
    assertEquals( newLocaleSize, steelWheels.getLocales().size() );
  }
View Full Code Here

   * @throws Exception
   */
  private static final Domain loadDomain( final String domainId, final String domainFile ) throws Exception {
    final InputStream in = PentahoMetadataDomainRepositoryTest.class.getResourceAsStream( domainFile );
    final XmiParser parser = new XmiParser();
    final Domain domain = parser.parseXmi( in );
    domain.setId( domainId );
    IOUtils.closeQuietly( in );
    return domain;
  }
View Full Code Here

    }

    @Override
    protected boolean matchesSafely( InputStream in ) {
      try {
        Domain domain = xmiParser.parseXmi( in );
        if ( domain.getLogicalModels().size() > 1
            && domain.getLogicalModels().get( 1 ).getProperty( LogicalModel.PROPERTY_OLAP_DIMS ) != null ) {
          return yes;
        }
        return !yes;
      } catch ( Exception e ) {
        throw new RuntimeException( e );
View Full Code Here

TOP

Related Classes of org.pentaho.metadata.model.Domain

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.