001/**
002 * Copyright (c) 2022-2023, Mybatis-Flex (fuhai999@gmail.com).
003 * <p>
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 * <p>
008 * http://www.apache.org/licenses/LICENSE-2.0
009 * <p>
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016package com.mybatisflex.core.table;
017
018import org.apache.ibatis.reflection.MetaObject;
019import org.apache.ibatis.reflection.ReflectorFactory;
020import org.apache.ibatis.reflection.factory.DefaultObjectFactory;
021import org.apache.ibatis.reflection.factory.ObjectFactory;
022import org.apache.ibatis.reflection.wrapper.DefaultObjectWrapperFactory;
023import org.apache.ibatis.reflection.wrapper.ObjectWrapperFactory;
024
025
026public final class EntityMetaObject {
027
028    public static final ObjectFactory DEFAULT_OBJECT_FACTORY = new DefaultObjectFactory();
029    public static final ObjectWrapperFactory DEFAULT_OBJECT_WRAPPER_FACTORY = new DefaultObjectWrapperFactory();
030
031    private EntityMetaObject() {
032        // Prevent Instantiation of Static Class
033    }
034
035
036    public static MetaObject forObject(Object object, ReflectorFactory reflectorFactory) {
037        return MetaObject.forObject(object, DEFAULT_OBJECT_FACTORY, DEFAULT_OBJECT_WRAPPER_FACTORY, reflectorFactory);
038    }
039
040}