Package com.dooapp.gaedo.blueprints.transformers

Examples of com.dooapp.gaedo.blueprints.transformers.LiteralTransformer



  @Override
  protected boolean callMatchLiteral(Vertex currentVertex, Property finalProperty) {
    Class<?> valueClass = finalProperty.getType();
    LiteralTransformer literalTransformer = Literals.get(valueClass);
    String effectiveGraphValue = currentVertex.getProperty(GraphUtils.getEdgeNameFor(finalProperty));
    ClassLoader classLoader = expected.getClass().getClassLoader();
    ComparableType value = (ComparableType) literalTransformer.fromString(effectiveGraphValue, valueClass, classLoader, objectsBeingAccessed);
    return doCompare(value);
  }
View Full Code Here


  public static Vertex getVertexForLiteral(GraphDatabaseDriver database, Object value) {
    Vertex returned = null;
    // Now distinct behaviour between known objects and unknown ones
    Class<? extends Object> valueClass = value.getClass();
    if(Literals.containsKey(valueClass)) {
      LiteralTransformer transformer = Literals.get(valueClass);
      returned = transformer.getVertexFor(database, valueClass.cast(value));
    } else {
      throw new ObjectIsNotARealLiteralException(value, valueClass);
      // TODO do not forget to set id property
    }
    return returned;
View Full Code Here

    if(classLoader==null) {
      throw new UnspecifiedClassLoader();
    }
    try {
      if(Literals.containsKey(classLoader, effectiveType) && !repository.containsKey(effectiveType)) {
        LiteralTransformer transformer = Literals.get(classLoader, effectiveType);
        return transformer.loadObject(driver, classLoader, effectiveType, key);
      } else {
        Class<?> type = classLoader.loadClass(effectiveType);
        if(Tuples.containsKey(type) && !repository.containsKey(type)) {
          // Tuples are handled the object way (easier, but more dangerous
          TupleTransformer transformer = Tuples.get(type);
          return transformer.loadObject(driver, strategy, classLoader, type, key, repository, objectsBeingAccessed);
        } else {
          return  type.newInstance();
        }
      }
    } catch(Exception e) {
View Full Code Here

  public static Vertex getVertexForBasicObject(IndexableGraph database, Object value) {
    Vertex returned = null;
    // Now distinct behaviour between known objects and unknown ones
    Class<? extends Object> valueClass = value.getClass();
    if(Literals.containsKey(valueClass)) {
      LiteralTransformer transformer = Literals.get(valueClass);
      returned = transformer.getVertexFor(database, valueClass.cast(value));
    } else {
      throw new ObjectIsNotARealLiteralException(value, valueClass);
      // TODO do not forget to set id property
    }
    returned.setProperty(Properties.type.name(), valueClass.getName());
View Full Code Here

  public static Object createInstance(ClassLoader classLoader, Vertex key) {
    String effectiveType = key.getProperty(Properties.type.name()).toString();
    try {
      Class effectiveClass = classLoader.loadClass(effectiveType);
      if(Literals.containsKey(effectiveClass)) {
        LiteralTransformer transformer = Literals.get(effectiveClass);
        return transformer.loadObject(effectiveClass, key);
      } else {
        return  effectiveClass.newInstance();
      }
    } catch(Exception e) {
      throw new UnableToCreateException(effectiveType, e);
View Full Code Here

  public static Vertex getVertexForLiteral(IndexableGraph database, Object value) {
    Vertex returned = null;
    // Now distinct behaviour between known objects and unknown ones
    Class<? extends Object> valueClass = value.getClass();
    if(Literals.containsKey(valueClass)) {
      LiteralTransformer transformer = Literals.get(valueClass);
      returned = transformer.getVertexFor(database, valueClass.cast(value));
    } else {
      throw new ObjectIsNotARealLiteralException(value, valueClass);
      // TODO do not forget to set id property
    }
    returned.setProperty(Properties.type.name(), valueClass.getName());
View Full Code Here

      throw new UnspecifiedClassLoader();
    }
    try {
      Class effectiveClass = classLoader.loadClass(effectiveType);
      if(Literals.containsKey(effectiveClass) && !repository.containsKey(effectiveClass)) {
        LiteralTransformer transformer = Literals.get(effectiveClass);
        return transformer.loadObject(effectiveClass, key);
      } else if(Tuples.containsKey(effectiveClass) && !repository.containsKey(effectiveClass)) {
        TupleTransformer transformer = Tuples.get(effectiveClass);
        return transformer.loadObject(classLoader, effectiveClass, key, repository, objectsBeingAccessed);
      } else {
        return  effectiveClass.newInstance();
      }
    } catch(Exception e) {
      throw new UnableToCreateException(effectiveType, e);
View Full Code Here

  public static Vertex getVertexForLiteral(GraphDatabaseDriver database, Object value) {
    Vertex returned = null;
    // Now distinct behaviour between known objects and unknown ones
    Class<? extends Object> valueClass = value.getClass();
    if(Literals.containsKey(valueClass)) {
      LiteralTransformer transformer = Literals.get(valueClass);
      returned = transformer.getVertexFor(database, valueClass.cast(value));
    } else {
      throw new ObjectIsNotARealLiteralException(value, valueClass);
      // TODO do not forget to set id property
    }
    return returned;
View Full Code Here

    if(classLoader==null) {
      throw new UnspecifiedClassLoader();
    }
    try {
      if(Literals.containsKey(classLoader, effectiveType) && !repository.containsKey(effectiveType)) {
        LiteralTransformer transformer = Literals.get(classLoader, effectiveType);
        return transformer.loadObject(driver, classLoader, effectiveType, key);
      } else {
        Class<?> type = classLoader.loadClass(effectiveType);
        if(Tuples.containsKey(type) && !repository.containsKey(type)) {
          // Tuples are handled the object way (easier, but more dangerous
          TupleTransformer transformer = Tuples.get(type);
          return transformer.loadObject(driver, classLoader, type, key, repository, objectsBeingAccessed);
        } else {
          return  type.newInstance();
        }
      }
    } catch(Exception e) {
View Full Code Here

  public static Vertex getVertexForLiteral(IndexableGraph database, Object value) {
    Vertex returned = null;
    // Now distinct behaviour between known objects and unknown ones
    Class<? extends Object> valueClass = value.getClass();
    if(Literals.containsKey(valueClass)) {
      LiteralTransformer transformer = Literals.get(valueClass);
      returned = transformer.getVertexFor(database, valueClass.cast(value));
    } else {
      throw new ObjectIsNotARealLiteralException(value, valueClass);
      // TODO do not forget to set id property
    }
    return returned;
View Full Code Here

TOP

Related Classes of com.dooapp.gaedo.blueprints.transformers.LiteralTransformer

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.