001/*
002 *  Copyright (c) 2022-2025, 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}