001/*
002 * JPPF.
003 * Copyright (C) 2005-2018 JPPF Team.
004 * http://www.jppf.org
005 *
006 * Licensed under the Apache License, Version 2.0 (the "License");
007 * you may not use this file except in compliance with the License.
008 * You may obtain a copy of the License at
009 *
010 *   http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing, software
013 * distributed under the License is distributed on an "AS IS" BASIS,
014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
015 * See the License for the specific language governing permissions and
016 * limitations under the License.
017 */
018
019package org.jppf.node.event;
020
021/**
022 * A type safe enumeration of all possible types of node life cycle events.
023 * @author Laurent Cohen
024 */
025public enum NodeLifeCycleEventType {
026  /**
027   * The node is starting and before any job processing.
028   */
029  NODE_STARTING,
030  /**
031   * The node is disconnected from the server.
032   */
033  NODE_ENDING,
034  /**
035   * After the job header was loaded from the server and before the data provider and tasks are loaded.
036   */
037  JOB_HEADER_LOADED,
038  /**
039   * Before the processing of the job.
040   */
041  JOB_STARTING,
042  /**
043   * After a job processing is complete.
044   */
045  JOB_ENDING,
046  /**
047   * <i>After</i> the node has sent the results of a job to the server, and <i>before</i> it receives the next job.
048   */
049  BEFORE_NEXT_JOB
050}