nit: By convention Java programs don't use abbreviated names like `src`; they use full names like `source`. You should do likewise here. Otherwise it's awkward to predict what something will be called: `dst` or `dest` or `destination`, `cxn` or `conn` or `connection`, etc.