Class MongodbDocumentSerializer

  • All Implemented Interfaces:
    Visitor<java.lang.Object,​java.lang.Void>

    public abstract class MongodbDocumentSerializer
    extends java.lang.Object
    implements Visitor<java.lang.Object,​java.lang.Void>
    Serializes the given Querydsl query to a Document query for MongoDB.
    Author:
    Mark Paluch
    • Constructor Detail

      • MongodbDocumentSerializer

        public MongodbDocumentSerializer()
    • Method Detail

      • handle

        public java.lang.Object handle​(Expression<?> expression)
      • toSort

        public org.bson.Document toSort​(java.util.List<OrderSpecifier<?>> orderBys)
      • visit

        public java.lang.Object visit​(Constant<?> expr,
                                      java.lang.Void context)
        Specified by:
        visit in interface Visitor<java.lang.Object,​java.lang.Void>
      • visit

        public java.lang.Object visit​(TemplateExpression<?> expr,
                                      java.lang.Void context)
        Specified by:
        visit in interface Visitor<java.lang.Object,​java.lang.Void>
      • visit

        public java.lang.Object visit​(FactoryExpression<?> expr,
                                      java.lang.Void context)
        Specified by:
        visit in interface Visitor<java.lang.Object,​java.lang.Void>
      • asDBKey

        protected java.lang.String asDBKey​(Operation<?> expr,
                                           int index)
      • asDBValue

        protected java.lang.Object asDBValue​(Operation<?> expr,
                                             int index)
      • asDocument

        protected org.bson.Document asDocument​(java.lang.String key,
                                               java.lang.Object value)
      • visit

        public java.lang.Object visit​(Operation<?> expr,
                                      java.lang.Void context)
        Specified by:
        visit in interface Visitor<java.lang.Object,​java.lang.Void>
      • convert

        protected java.lang.Object convert​(Path<?> property,
                                           Constant<?> constant)
      • isImplicitObjectIdConversion

        protected boolean isImplicitObjectIdConversion()
      • asReferenceKey

        protected com.mongodb.DBRef asReferenceKey​(java.lang.Class<?> entity,
                                                   java.lang.Object id)
      • asReference

        protected abstract com.mongodb.DBRef asReference​(java.lang.Object constant)
      • isReference

        protected abstract boolean isReference​(Path<?> arg)
      • isId

        protected boolean isId​(Path<?> arg)
      • visit

        public java.lang.String visit​(Path<?> expr,
                                      java.lang.Void context)
        Specified by:
        visit in interface Visitor<java.lang.Object,​java.lang.Void>
      • getKeyForPath

        protected java.lang.String getKeyForPath​(Path<?> expr,
                                                 PathMetadata metadata)
      • visit

        public java.lang.Object visit​(SubQueryExpression<?> expr,
                                      java.lang.Void context)
        Specified by:
        visit in interface Visitor<java.lang.Object,​java.lang.Void>
      • visit

        public java.lang.Object visit​(ParamExpression<?> expr,
                                      java.lang.Void context)
        Specified by:
        visit in interface Visitor<java.lang.Object,​java.lang.Void>