/**
 * Copyright 2019 The CloudEvents Authors
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package io.cloudevents.fun;

import io.cloudevents.Attributes;

/**
 * For the 'data' unmarshalling.
 * 
 * @author fabiojose
 *
 * @param <P> The payload type
 * @param <T> The 'data' type
 */
@FunctionalInterface
public interface DataUnmarshaller<P, T, A extends Attributes> {

	/**
	 * Unmarshals the payload into 'data'
	 * @param payload
	 * @param attributes
	 * @return
	 * @throws Exception
	 */
	T unmarshal(P payload, A attributes) throws Exception;
	
}

@@ -982,24 +982,31 @@
 %09 * @throws 
+Runtime
 Exception%0A%09 
@@ -1002,16 +1002,62 @@
 xception
+ If something bad happens during the umarshall
 %0A%09 */%0A%09T
@@ -1095,25 +1095,8 @@
 tes)
- throws Exception
 ;%0A%09%0A

Remove the checked exception