@SuppressWarnings("unchecked")
	@Override
	public <E extends Serializable> void handle(Transport<E> unwrappedRoot, Set<String> includesPath, Method setter, Serializable value) 
			throws SerializationProcessingException {
		if (includesPath==null || includesPath.isEmpty()) {
			return;
		}
		String fieldName = createFieldNameFromSetter(setter);
		for (String cachePathEntry : includesPath) {
			if (cachePathEntry.equalsIgnoreCase(fieldName))	 { //For first level fetches, like "address" 
				continueSerialialization(unwrappedRoot.getEntity(), setter, (Collection<? extends Serializable>) value, null);
				break;
			} else if (cachePathEntry.startsWith(fieldName+".")) {	//For N-level fetches like "address.somethingElse.moreDeep" 						
				Set<String> nextSerializationPath = null;	//createNextPath(includesPath, fieldName);	//TODO
				continueSerialialization(unwrappedRoot.getEntity(), setter, (Collection<? extends Serializable>) value, nextSerializationPath);
				break;
			}
		}
	}