public EIExternalResourceService(@Context ServletContext context) throws RepositoryProviderException { final WebApplicationContext webApplicationContext = WebApplicationContextUtils.getWebApplicationContext( context ); final LocalNodeInterface localNode = webApplicationContext.getBean( "localNodeService", LocalNodeService.class ); eiModelProvider = webApplicationContext.getBean( "eiModelProvider", EIModelProvider.class ); securityProvider = new DatatoolsSecurityProvider( localNode.getLocalNodeConfig().getNodeUrlString() ); final RepositoryHttpConfig sslRepoConfig = securityProvider.getRepoConfig(); crudProvider = new RepositoryCrudProvider( eiModelProvider, sslRepoConfig ); workflowProvider = new RepositoryWorkflowProvider( eiModelProvider, sslRepoConfig ); queryProvider = new RepositoryQueryProvider( eiModelProvider, sslRepoConfig ); instanceProvider = new RepositoryInstanceProvider( eiModelProvider, sslRepoConfig ); }
public EICatalystCoreLab getEICoreLab(final EIURI labURI) throws RepositoryProviderException { if ( !AuthenticationManager.getInstance().isValid( user.getSessionId(), false ) ) { if ( DEBUG ) { logger.debug( "session for labpages module expired; re-logging in" ); } user = securityProvider.login( userName, password ); } final EIInstance instance = instanceProvider.getEditInstance( user.getSessionId(), labURI, READ_PUBLISHED_VIEW ); instanceProvider.setReferencingResources( user.getSessionId(), instance ); // return new EICoreLab(instance, getPeople(instance), getDescriptions(instance)); return new EICatalystCoreLab( instance, getPeople( instance ) ); }
private Map<EIEntity, EIInstance> getPeople(final EIInstance instance) throws RepositoryProviderException { final Map<EIEntity, EIInstance> people = new HashMap<EIEntity, EIInstance>(); final Set<EIEntity> allPersonValues = new HashSet<EIEntity>(); for (final EIEntity personProperty : EICatalystCoreLab.PEOPLE_PROPERTIES) { final Set<EIEntity> values = instance.getObjectProperty( personProperty ); if ( values != null ) { allPersonValues.addAll( values ); } } for (final EIEntity entity : allPersonValues) { try { final EIInstance person = instanceProvider.getViewInstance( user.getSessionId(), entity.getURI(), READ_PUBLISHED_VIEW ); people.put( entity, person ); } catch (final RepositoryProviderException e) { logger.info( "Could not get person record for uri: " + entity.getURI() ); // do not make it a failure, we accept broken links for people } } return people; }
final EIInstance primary = instanceProvider.getEditInstance( user.getSessionId(), EIURI.create(uri) ); if ( primary == null ) { return EIExchangeInstance.NULL_EIEXCHANGEINSTANCE;
protected void doDependencyInjection(final ApplicationContext springAppContext) { eiModelProvider = springAppContext.getBean( "eiModelProvider", EIModelProvider.class ); // should // ONLY // refer // to // spring // context // in // web.xml securityProvider = springAppContext.getBean( "securityProvider", DatatoolsSecurityProvider.class ); // either spring constructs the servlet, OR tomcat does it for you crudProvider = new RepositoryCrudProvider( eiModelProvider, securityProvider.getRepoConfig() ); listResourcesProvider = new RepositoryListResourcesProvider( eiModelProvider, securityProvider.getRepoConfig() ); queryProvider = new RepositoryQueryProvider( eiModelProvider, securityProvider.getRepoConfig() ); workflowProvider = new RepositoryWorkflowProvider( eiModelProvider, securityProvider.getRepoConfig() ); instanceProvider = new RepositoryInstanceProvider( eiModelProvider, securityProvider.getRepoConfig() ); }
public EIResourceProvider getEIResourceProvider( final EIURI providerURI) throws RepositoryProviderException { if ( !AuthenticationManager.getInstance().isValid( user.getSessionId(), false ) ) { if ( DEBUG ) { logger.debug( "Session for labs module expired; re-logging in" ); } user = securityProvider.login( userName, password ); } final EIInstance instance = instanceProvider.getEditInstance( user.getSessionId(), providerURI, READ_PUBLISHED_VIEW ); instanceProvider.setReferencingResources( user.getSessionId(), instance ); return new EIResourceProvider( instance, getPeople( instance ) ); }
/** * @param value * @return */ private EIExchangeInstance createLinkedExchangeInstance(final EIInstance primary, final EIEntity linkedInstanceEntity, final User user) { EIInstance linkedInstance; final EIInstance embedded = primary.getEmbeddedInstance( linkedInstanceEntity ); if ( embedded != null && !EIInstance.NULL_INSTANCE.equals( embedded ) ) { linkedInstance = embedded; } else { linkedInstance = instanceProvider.getViewInstance( user.getSessionId(), linkedInstanceEntity.getURI() ); } if ( linkedInstance != null && !EIInstance.NULL_INSTANCE.equals( linkedInstance ) ) { final EIExchangeInstance linkedExchangeInstance = new EIExchangeInstance( linkedInstance ); return linkedExchangeInstance; } return EIExchangeInstance.NULL_EIEXCHANGEINSTANCE; }
public EIExternalResourceService(final EIModelProvider provider) throws EIFileException, JAXBException { final LocalNodeInterface localNode = LocalNodeService.getInstance(); securityProvider = new DatatoolsSecurityProvider( localNode.getLocalNodeConfig().getNodeUrlString() ); final RepositoryHttpConfig sslRepoConfig = securityProvider.getRepoConfig(); crudProvider = new RepositoryCrudProvider( provider, sslRepoConfig ); workflowProvider = new RepositoryWorkflowProvider( provider, sslRepoConfig ); queryProvider = new RepositoryQueryProvider( provider, sslRepoConfig ); instanceProvider = new RepositoryInstanceProvider( provider, sslRepoConfig ); }
public DataProvider(final EIModelProvider eiModelProvider) throws EIFileException, JAXBException { node = LocalNodeService.getInstance(); securityProvider = new DatatoolsSecurityProvider( node.getLocalNodeConfig().getNodeUrlString() ); sslRepoConfig = securityProvider.getRepoConfig(); repoConfig = new RepositoryHttpConfig( sslRepoConfig.getHostURL() ); fixedQueryProvider = new RepositoryQueryProvider( eiModelProvider, sslRepoConfig ); instanceProvider = new RepositoryInstanceProvider( eiModelProvider, sslRepoConfig, true ); jenaIntanceFactory = new JenaEIInstanceFactory( eiModelProvider ); getCredentialsForRepoFromProperties(); user = securityProvider.login( userName, password ); eiModel = eiModelProvider; }