Package org.mmisw.orrportal.gwt.server

Source Code of org.mmisw.orrportal.gwt.server.OrrClientProxy

package org.mmisw.orrportal.gwt.server;

import java.util.List;
import java.util.Map;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.mmisw.orrclient.IOrrClient;
import org.mmisw.orrclient.OrrClientConfiguration;
import org.mmisw.orrclient.gwt.client.rpc.CreateOntologyInfo;
import org.mmisw.orrclient.gwt.client.rpc.CreateOntologyResult;
import org.mmisw.orrclient.gwt.client.rpc.CreateUpdateUserAccountResult;
import org.mmisw.orrclient.gwt.client.rpc.ExternalOntologyInfo;
import org.mmisw.orrclient.gwt.client.rpc.GetAllOntologiesResult;
import org.mmisw.orrclient.gwt.client.rpc.InternalOntologyResult;
import org.mmisw.orrclient.gwt.client.rpc.LoginResult;
import org.mmisw.orrclient.gwt.client.rpc.MetadataBaseInfo;
import org.mmisw.orrclient.gwt.client.rpc.RegisterOntologyResult;
import org.mmisw.orrclient.gwt.client.rpc.RegisteredOntologyInfo;
import org.mmisw.orrclient.gwt.client.rpc.ResetPasswordResult;
import org.mmisw.orrclient.gwt.client.rpc.ResolveUriResult;
import org.mmisw.orrclient.gwt.client.rpc.SparqlQueryInfo;
import org.mmisw.orrclient.gwt.client.rpc.SparqlQueryResult;
import org.mmisw.orrclient.gwt.client.rpc.TempOntologyInfo;
import org.mmisw.orrclient.gwt.client.rpc.UnregisterOntologyResult;
import org.mmisw.orrclient.gwt.client.rpc.UserInfoResult;
import org.mmisw.orrclient.gwt.client.rpc.vine.RelationInfo;
import org.mmisw.orrclient.gwt.client.vocabulary.AttrDef;
import org.mmisw.orrportal.gwt.client.rpc.PortalBaseInfo;


/**
* A proxy object that creates, configures and interacts with the OrrClient object.
*
* @author Carlos Rueda
* @version $Id$
*/
public class OrrClientProxy  {

  private static OrrClientProxy instance = null;
 
  /**
   * Returns the instance of this class, note the it will be null
   * if {@link #createInstance(String, String)} has not been called.
   * @return
   */
  public static OrrClientProxy getInstance() {
    return instance;
  }
 
  /**
   * Creates the instance of this class, if not already created.
   * It uses PortalConfig.
   *
   * @return the instance
   * @throws Exception
   * @throws IllegalStateException if instance already created.
   */
  public static OrrClientProxy createInstance() throws Exception {
    if ( instance != null ) {
      throw new IllegalStateException(OrrClientProxy.class.getName()+ " instance already created");
    }
    instance = new OrrClientProxy();
    return instance;
  }

 
  private final Log log = LogFactory.getLog(OrrClientProxy.class);
 
  private final PortalBaseInfo portalBaseInfo;
 
 
  private IOrrClient orrClient;
 

  /**
   * Creates this object
   * @throws Exception
   */
  private OrrClientProxy() throws Exception {
    log.info("initializing " +getClass().getSimpleName()+ "...");
   
    // parameters from our config object for the OrrClientConfiguration:
    String ontServiceUrl = PortalConfig.Prop.ONT_SERVICE_URL.getValue();
    String previewDirectory = PortalConfig.Prop.PREVIEW_DIR.getValue();
    String voc2rdfDirectory = PortalConfig.Prop.VOC2RDF_DIR.getValue();
    String mailUser = PortalConfig.Prop.MAIL_USER.getValue();
    String mailPassword = PortalConfig.Prop.MAIL_PASSWORD.getValue();
   
    portalBaseInfo = _prepareBaseInfo();
   
    // create OrrClientConfiguration and initialize orrclient library:
    OrrClientConfiguration occ = new OrrClientConfiguration();
    occ.setOntServiceUrl(ontServiceUrl);
    occ.setPreviewDirectory(previewDirectory);
    occ.setVoc2rdfDirectory(voc2rdfDirectory);
    occ.setMailUser(mailUser);
    occ.setMailPassword(mailPassword);
    orrClient = IOrrClient.Manager.init(occ);
   
    log.info("Using: " +orrClient.getAppInfo());
  }

  public PortalBaseInfo getBaseInfo() {
    return portalBaseInfo;
  }
 
  private PortalBaseInfo _prepareBaseInfo() {
    PortalBaseInfo pbi = new PortalBaseInfo();
    pbi.setAppServerUrl(PortalConfig.Prop.APPSERVER_HOST.getValue());
    pbi.setOntServiceUrl(PortalConfig.Prop.ONT_SERVICE_URL.getValue());
    pbi.setOntbrowserServiceUrl(PortalConfig.Prop.ONTBROWSER_SERVICE_URL.getValue());
    pbi.setGaUaNumber(PortalConfig.Prop.GA_UA_NUMBER.getValue());
    log.info("portal base info: done.");
    return pbi;
  }
 
 
 
  public GetAllOntologiesResult getAllOntologies(boolean includePriorVersions) {
    return orrClient.getAllOntologies(includePriorVersions);
  }
 
  public ResolveUriResult resolveUri(String uri) {
    return orrClient.resolveUri(uri);
  }

  /**
   * Gets an ontology from the registry.
   */
  public RegisteredOntologyInfo getOntologyInfo(String ontologyUri) {
    return orrClient.getOntologyInfo(ontologyUri);
  }
 
 
  public MetadataBaseInfo getMetadataBaseInfo(boolean includeVersion) {
    String resourceTypeClassUri = PortalConfig.Prop.RESOURCE_TYPE_CLASS.getValue();
    String authorityClassUri = PortalConfig.Prop.AUTHORITY_CLASS.getValue();
   
    return orrClient.getMetadataBaseInfo(includeVersion, resourceTypeClassUri, authorityClassUri);
  }
 
  public AttrDef refreshOptions(AttrDef attrDef) {
    return orrClient.refreshOptions(attrDef);
  }
 
  public RegisteredOntologyInfo getOntologyMetadata(RegisteredOntologyInfo ontologyInfo, String version) {
    return orrClient.getOntologyMetadata(ontologyInfo, version);
  }

  public RegisteredOntologyInfo getOntologyContents(RegisteredOntologyInfo ontologyInfo, String version) {
    return orrClient.getOntologyContents(ontologyInfo, version);
  }

  public CreateOntologyResult createOntology(CreateOntologyInfo createOntologyInfo) {
    return orrClient.createOntology(createOntologyInfo);
  }
 
 
  public RegisterOntologyResult registerOntology(CreateOntologyResult createOntologyResult, LoginResult loginResult) {
    return orrClient.registerOntology(createOntologyResult, loginResult);
  }
 
 
  public TempOntologyInfo getTempOntologyInfo(
      String fileType, String filename, boolean includeContents,
      boolean includeRdf) {
    return orrClient.getTempOntologyInfo(fileType, filename, includeContents, includeRdf);
  }
 
 
  ////////////////////////////////////////////////////////////////////////////////////////////
  // VINE:
 

  public List<RelationInfo> getDefaultVineRelationInfos() {
    return orrClient.getDefaultVineRelationInfos();
  }
 
  /**
   * Gets an external ontology.
   */
  public ExternalOntologyInfo getExternalOntologyInfo(String ontologyUri) {
    return orrClient.getExternalOntologyInfo(ontologyUri);
  }

  // :VINE
  ////////////////////////////////////////////////////////////////////////////////////////////

 
  // Search:
 
  public SparqlQueryResult runSparqlQuery(SparqlQueryInfo query) {
    return orrClient.runSparqlQuery(query);
  }
 
 
  // login
 
  public LoginResult authenticateUser(String userName, String userPassword) {
    return orrClient.authenticateUser(userName, userPassword);
  }
 
  public ResetPasswordResult resetUserPassword(String username) {
    return orrClient.resetUserPassword(username);
  }

  public UserInfoResult getUserInfo(String username) {
    return orrClient.getUserInfo(username);
  }
 
  public CreateUpdateUserAccountResult createUpdateUserAccount(Map<String,String> values) {
    return orrClient.createUpdateUserAccount(values);
  }
 
 
  /////////////////////////////////////////////////////////////////////////////////////////////
  // OOI CI semantic prototype
  public RegisterOntologyResult registerOntologyDirectly(
      LoginResult loginResult,
      RegisteredOntologyInfo registeredOntologyInfo,
      CreateOntologyInfo createOntologyInfo,
      String graphId
  ) {
    return orrClient.registerOntologyDirectly(loginResult, registeredOntologyInfo, createOntologyInfo, graphId);
  }

 
  public InternalOntologyResult prepareUsersOntology(LoginResult loginResult) {
    return orrClient.prepareUsersOntology(loginResult);
  }
 
  public InternalOntologyResult createGroupsOntology(LoginResult loginResult) {
    return orrClient.createGroupsOntology(loginResult);
  }
 
 
  public UnregisterOntologyResult unregisterOntology(LoginResult loginResult, RegisteredOntologyInfo oi) {
    return orrClient.unregisterOntology(loginResult, oi);
  }
}
TOP

Related Classes of org.mmisw.orrportal.gwt.server.OrrClientProxy

TOP
Copyright © 2018 www.massapi.com. 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.