public static void copy(Member newMember, Member oldMember) {
        oldMember.setIp(newMember.getIp());
        oldMember.setPort(newMember.getPort());
        oldMember.setState(newMember.getState());
        oldMember.setExtendInfo(newMember.getExtendInfo());
        oldMember.setAddress(newMember.getAddress());
        oldMember.setAbilities(newMember.getAbilities());
        oldMember.setGrpcReportEnabled(newMember.isGrpcReportEnabled());
    }
@Test
    void testCopy() {
        Member expected = Member.builder().build();
        expected.setIp("2.2.2.2");
        expected.setPort(9999);
        expected.setState(NodeState.SUSPICIOUS);
        expected.setExtendVal(MemberMetaDataConstants.VERSION, "test");
        expected.getAbilities().getRemoteAbility().setSupportRemoteConnection(true);
        MemberUtil.copy(expected, originalMember);
        assertEquals(expected.getIp(), originalMember.getIp());
        assertEquals(expected.getPort(), originalMember.getPort());
        assertEquals(expected.getAddress(), originalMember.getAddress());
        assertEquals(NodeState.SUSPICIOUS, originalMember.getState());
        assertEquals("test", originalMember.getExtendVal(MemberMetaDataConstants.VERSION));
        assertTrue(originalMember.getAbilities().getRemoteAbility().isSupportRemoteConnection());
    }