@Override
public MeshRequest<NodeResponse> transformNodeBinaryField(String projectName, String nodeUuid, String languageTag, String version,
String fieldKey, ImageManipulationParameters parameters) {
Objects.requireNonNull(projectName, "projectName must not be null");
Objects.requireNonNull(nodeUuid, "nodeUuid must not be null");
Objects.requireNonNull(languageTag, "language must not be null");
Objects.requireNonNull(version, "version must not be null");
Objects.requireNonNull(fieldKey, "field key must not be null");
BinaryFieldTransformRequest transformRequest = new BinaryFieldTransformRequest();
transformRequest.setCropRect(parameters.getRect());
transformRequest.setWidth(parameters.getWidth());
transformRequest.setHeight(parameters.getHeight());
transformRequest.setLanguage(languageTag).setVersion(version);
return prepareRequest(POST, "/" + encodeSegment(projectName) + "/nodes/" + nodeUuid + "/binaryTransform/" + fieldKey, NodeResponse.class,
transformRequest);
}