question: get a copy of the listeners concode_field_sep JingleSession session concode_elem_sep String expectedAckId concode_elem_sep Logger LOGGER concode_elem_sep List<JingleListener> listeners concode_elem_sep JingleNegotiatorState state concode_elem_sep boolean isStarted concode_field_sep List<IQ> dispatchIncomingPacket concode_elem_sep void start concode_elem_sep void removeListener concode_elem_sep boolean isStarted concode_elem_sep void removeExpectedId concode_elem_sep void addExpectedId concode_elem_sep boolean isExpectedId concode_elem_sep XMPPConnection getConnection concode_elem_sep JingleNegotiatorState getNegotiatorState concode_elem_sep void doStart concode_elem_sep void setSession concode_elem_sep void setNegotiatorState concode_elem_sep JingleSession getSession concode_elem_sep void close concode_elem_sep void addListener
target: List < JingleListener > function ( ) { ArrayList < JingleListener > loc0 ; synchronized ( listeners ) { loc0 = new ArrayList < JingleListener > ( listeners ) ; } return loc0 ; }