public void close() throws Exception {
        if (isClosed()) {
            return;
        }
        closed = true;
        wrapped.close();
    }
@Test
    public void testClose() throws Exception {
        TestingOneInputStreamOperator operator = new TestingOneInputStreamOperator();
        TableOperatorWrapper<TestingOneInputStreamOperator> wrapper =
                createOneInputOperatorWrapper(operator, "test");
        StreamOperatorParameters<RowData> parameters = createStreamOperatorParameters();
        wrapper.createOperator(parameters);
        assertThat(wrapper.getStreamOperator()).isEqualTo(operator);

        assertThat(operator.isClosed()).isFalse();
        assertThat(wrapper.isClosed()).isFalse();
        wrapper.close();
        assertThat(wrapper.isClosed()).isTrue();
        assertThat(operator.isClosed()).isTrue();

        // close again
        wrapper.close();
        assertThat(wrapper.isClosed()).isTrue();
        assertThat(operator.isClosed()).isTrue();
    }