Why are we injecting the codec by name; I see the factory bean has

````java
	public NetServerFactoryBean setCodec(String codec) {
		if("bytes".equals(codec)) {
			this.codec = StandardCodecs.BYTE_ARRAY_CODEC;
		} else if("string".equals(codec)) {
			this.codec = StandardCodecs.STRING_CODEC;
		} else if("syslog".equals(codec)) {
			this.codec = new SyslogCodec();
		} else {
			throw new IllegalArgumentException("Codec '" + codec + "' not recognized.");
		}
		return this;
	}
```

This seems too restrictive in that I can't inject my own `Codec`.