@@ -0,0 +1,1314 @@
+/*%0A * Copyright 2016-2018 shardingsphere.io.%0A * %3Cp%3E%0A * Licensed under the Apache License, Version 2.0 (the %22License%22);%0A * you may not use this file except in compliance with the License.%0A * You may obtain a copy of the License at%0A *%0A *     http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A * %3C/p%3E%0A */%0A%0Apackage io.shardingsphere.core.execute.event;%0A%0Aimport com.google.common.base.Optional;%0Aimport lombok.Getter;%0Aimport lombok.Setter;%0A%0Aimport java.util.UUID;%0A%0A/**%0A * SQL execution event.%0A *%0A * @author zhangliang%0A */%0Apublic abstract class AbstractExecutionEvent %7B%0A    %0A    @Getter%0A    private final String id = UUID.randomUUID().toString();%0A    %0A    @Getter%0A    @Setter%0A    private EventExecutionType eventExecutionType = EventExecutionType.BEFORE_EXECUTE;%0A    %0A    @Setter%0A    private Exception exception;%0A    %0A    /**%0A     * Get exception.%0A     * %0A     * @return exception%0A     */%0A    public Optional%3C? extends Exception%3E getException() %7B%0A        return Optional.fromNullable(exception);%0A    %7D%0A%7D%0A

add AbstractExecutionEvent