package tech.powerjob.remote.framework.utils; import org.apache.commons.lang3.ArrayUtils; import tech.powerjob.common.PowerSerializable; import java.util.Optional; /** * RemoteUtils * * @author tjq * @since 2023/1/1 */ public class RemoteUtils { public static Optional> findPowerSerialize(Class[] parameterTypes) { if (ArrayUtils.isEmpty(parameterTypes)) { return Optional.empty(); } for (Class clz : parameterTypes) { final Class[] interfaces = clz.getInterfaces(); if (ArrayUtils.isEmpty(interfaces)) { continue; } if (PowerSerializable.class.isAssignableFrom(clz)) { return Optional.of(clz); } } return Optional.empty(); } }