summaryrefslogtreecommitdiff
path: root/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src
diff options
context:
space:
mode:
Diffstat (limited to 'src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src')
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Advice.java224
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Applicability.java129
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Cause.java87
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/DirectCause.java398
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LaneRestrictions.java141
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LinkedCause.java80
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimit.java145
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimitSection.java190
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TrafficIncident.java886
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/VehicleRelatedRestriction.java197
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentFactory.java128
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentPackage.java1730
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/AdviceImpl.java425
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/ApplicabilityImpl.java281
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/CauseImpl.java204
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/DirectCauseImpl.java761
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LaneRestrictionsImpl.java292
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LinkedCauseImpl.java201
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitImpl.java352
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitSectionImpl.java378
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TrafficIncidentImpl.java1527
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/VehicleRelatedRestrictionImpl.java435
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentFactoryImpl.java199
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentPackageImpl.java882
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentAdapterFactory.java287
-rwxr-xr-xsrc/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentSwitch.java306
26 files changed, 10865 insertions, 0 deletions
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Advice.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Advice.java
new file mode 100755
index 0000000..2fcf0e4
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Advice.java
@@ -0,0 +1,224 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.genivi.common.LocalizedString;
+
+import org.genivi.trafficincidentsservice.trafficincidenttables.AdviceCode;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Advice</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getMainAdvice <em>Main Advice</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getSubAdvice <em>Sub Advice</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getFreeText <em>Free Text</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getApplicability <em>Applicability</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getAdvice()
+ * @model
+ * @generated
+ */
+public interface Advice extends EObject {
+ /**
+ * Returns the value of the '<em><b>Main Advice</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.AdviceCode}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Main Advice</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Main Advice</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.AdviceCode
+ * @see #isSetMainAdvice()
+ * @see #unsetMainAdvice()
+ * @see #setMainAdvice(AdviceCode)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getAdvice_MainAdvice()
+ * @model unsettable="true"
+ * @generated
+ */
+ AdviceCode getMainAdvice();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getMainAdvice <em>Main Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Main Advice</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.AdviceCode
+ * @see #isSetMainAdvice()
+ * @see #unsetMainAdvice()
+ * @see #getMainAdvice()
+ * @generated
+ */
+ void setMainAdvice(AdviceCode value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getMainAdvice <em>Main Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetMainAdvice()
+ * @see #getMainAdvice()
+ * @see #setMainAdvice(AdviceCode)
+ * @generated
+ */
+ void unsetMainAdvice();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getMainAdvice <em>Main Advice</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Main Advice</em>' attribute is set.
+ * @see #unsetMainAdvice()
+ * @see #getMainAdvice()
+ * @see #setMainAdvice(AdviceCode)
+ * @generated
+ */
+ boolean isSetMainAdvice();
+
+ /**
+ * Returns the value of the '<em><b>Sub Advice</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The actual value of this atttribute depends on the adviceCode. So based on the adviceCode it has to be cast to the related enum.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Sub Advice</em>' attribute.
+ * @see #isSetSubAdvice()
+ * @see #unsetSubAdvice()
+ * @see #setSubAdvice(Object)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getAdvice_SubAdvice()
+ * @model unsettable="true"
+ * @generated
+ */
+ Object getSubAdvice();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getSubAdvice <em>Sub Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Sub Advice</em>' attribute.
+ * @see #isSetSubAdvice()
+ * @see #unsetSubAdvice()
+ * @see #getSubAdvice()
+ * @generated
+ */
+ void setSubAdvice(Object value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getSubAdvice <em>Sub Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetSubAdvice()
+ * @see #getSubAdvice()
+ * @see #setSubAdvice(Object)
+ * @generated
+ */
+ void unsetSubAdvice();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getSubAdvice <em>Sub Advice</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Sub Advice</em>' attribute is set.
+ * @see #unsetSubAdvice()
+ * @see #getSubAdvice()
+ * @see #setSubAdvice(Object)
+ * @generated
+ */
+ boolean isSetSubAdvice();
+
+ /**
+ * Returns the value of the '<em><b>Free Text</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.common.LocalizedString}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Free Text</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Free Text</em>' containment reference list.
+ * @see #isSetFreeText()
+ * @see #unsetFreeText()
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getAdvice_FreeText()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ EList<LocalizedString> getFreeText();
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getFreeText <em>Free Text</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetFreeText()
+ * @see #getFreeText()
+ * @generated
+ */
+ void unsetFreeText();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getFreeText <em>Free Text</em>}' containment reference list is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Free Text</em>' containment reference list is set.
+ * @see #unsetFreeText()
+ * @see #getFreeText()
+ * @generated
+ */
+ boolean isSetFreeText();
+
+ /**
+ * Returns the value of the '<em><b>Applicability</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Applicability</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Applicability</em>' containment reference list.
+ * @see #isSetApplicability()
+ * @see #unsetApplicability()
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getAdvice_Applicability()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ EList<Applicability> getApplicability();
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getApplicability <em>Applicability</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetApplicability()
+ * @see #getApplicability()
+ * @generated
+ */
+ void unsetApplicability();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getApplicability <em>Applicability</em>}' containment reference list is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Applicability</em>' containment reference list is set.
+ * @see #unsetApplicability()
+ * @see #getApplicability()
+ * @generated
+ */
+ boolean isSetApplicability();
+
+} // Advice
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Applicability.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Applicability.java
new file mode 100755
index 0000000..ecdc99a
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Applicability.java
@@ -0,0 +1,129 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.genivi.trafficincidentsservice.trafficincidenttables.VehicleType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Applicability</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleType <em>Vehicle Type</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleRelatedRestrictions <em>Vehicle Related Restrictions</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getApplicability()
+ * @model
+ * @generated
+ */
+public interface Applicability extends EObject {
+ /**
+ * Returns the value of the '<em><b>Vehicle Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.VehicleType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Vehicle Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Vehicle Type</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.VehicleType
+ * @see #isSetVehicleType()
+ * @see #unsetVehicleType()
+ * @see #setVehicleType(VehicleType)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getApplicability_VehicleType()
+ * @model unsettable="true"
+ * @generated
+ */
+ VehicleType getVehicleType();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleType <em>Vehicle Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Vehicle Type</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.VehicleType
+ * @see #isSetVehicleType()
+ * @see #unsetVehicleType()
+ * @see #getVehicleType()
+ * @generated
+ */
+ void setVehicleType(VehicleType value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleType <em>Vehicle Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetVehicleType()
+ * @see #getVehicleType()
+ * @see #setVehicleType(VehicleType)
+ * @generated
+ */
+ void unsetVehicleType();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleType <em>Vehicle Type</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Vehicle Type</em>' attribute is set.
+ * @see #unsetVehicleType()
+ * @see #getVehicleType()
+ * @see #setVehicleType(VehicleType)
+ * @generated
+ */
+ boolean isSetVehicleType();
+
+ /**
+ * Returns the value of the '<em><b>Vehicle Related Restrictions</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Vehicle Related Restrictions</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Vehicle Related Restrictions</em>' containment reference list.
+ * @see #isSetVehicleRelatedRestrictions()
+ * @see #unsetVehicleRelatedRestrictions()
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getApplicability_VehicleRelatedRestrictions()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ EList<VehicleRelatedRestriction> getVehicleRelatedRestrictions();
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleRelatedRestrictions <em>Vehicle Related Restrictions</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetVehicleRelatedRestrictions()
+ * @see #getVehicleRelatedRestrictions()
+ * @generated
+ */
+ void unsetVehicleRelatedRestrictions();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleRelatedRestrictions <em>Vehicle Related Restrictions</em>}' containment reference list is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Vehicle Related Restrictions</em>' containment reference list is set.
+ * @see #unsetVehicleRelatedRestrictions()
+ * @see #getVehicleRelatedRestrictions()
+ * @generated
+ */
+ boolean isSetVehicleRelatedRestrictions();
+
+} // Applicability
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Cause.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Cause.java
new file mode 100755
index 0000000..82482e6
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/Cause.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.genivi.trafficincidentsservice.trafficincidenttables.CauseCode;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Cause</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause#getMainCause <em>Main Cause</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getCause()
+ * @model
+ * @generated
+ */
+public interface Cause extends EObject {
+ /**
+ * Returns the value of the '<em><b>Main Cause</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.CauseCode}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Main Cause</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Main Cause</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.CauseCode
+ * @see #isSetMainCause()
+ * @see #unsetMainCause()
+ * @see #setMainCause(CauseCode)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getCause_MainCause()
+ * @model unsettable="true"
+ * @generated
+ */
+ CauseCode getMainCause();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause#getMainCause <em>Main Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Main Cause</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.CauseCode
+ * @see #isSetMainCause()
+ * @see #unsetMainCause()
+ * @see #getMainCause()
+ * @generated
+ */
+ void setMainCause(CauseCode value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause#getMainCause <em>Main Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetMainCause()
+ * @see #getMainCause()
+ * @see #setMainCause(CauseCode)
+ * @generated
+ */
+ void unsetMainCause();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause#getMainCause <em>Main Cause</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Main Cause</em>' attribute is set.
+ * @see #unsetMainCause()
+ * @see #getMainCause()
+ * @see #setMainCause(CauseCode)
+ * @generated
+ */
+ boolean isSetMainCause();
+
+} // Cause
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/DirectCause.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/DirectCause.java
new file mode 100755
index 0000000..7cd8f94
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/DirectCause.java
@@ -0,0 +1,398 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.genivi.common.LocalizedString;
+
+import org.genivi.trafficincidentsservice.trafficincidenttables.WarningLevel;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Direct Cause</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getWarningLevel <em>Warning Level</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#isUnverifiedInformation <em>Unverified Information</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getSubCause <em>Sub Cause</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLengthAffected <em>Length Affected</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLaneRestrictions <em>Lane Restrictions</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getFreeText <em>Free Text</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getCauseOffset <em>Cause Offset</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause()
+ * @model
+ * @generated
+ */
+public interface DirectCause extends Cause {
+ /**
+ * Returns the value of the '<em><b>Warning Level</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.WarningLevel}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Warning Level</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Warning Level</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.WarningLevel
+ * @see #isSetWarningLevel()
+ * @see #unsetWarningLevel()
+ * @see #setWarningLevel(WarningLevel)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause_WarningLevel()
+ * @model unsettable="true" required="true"
+ * @generated
+ */
+ WarningLevel getWarningLevel();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getWarningLevel <em>Warning Level</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Warning Level</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.WarningLevel
+ * @see #isSetWarningLevel()
+ * @see #unsetWarningLevel()
+ * @see #getWarningLevel()
+ * @generated
+ */
+ void setWarningLevel(WarningLevel value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getWarningLevel <em>Warning Level</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetWarningLevel()
+ * @see #getWarningLevel()
+ * @see #setWarningLevel(WarningLevel)
+ * @generated
+ */
+ void unsetWarningLevel();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getWarningLevel <em>Warning Level</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Warning Level</em>' attribute is set.
+ * @see #unsetWarningLevel()
+ * @see #getWarningLevel()
+ * @see #setWarningLevel(WarningLevel)
+ * @generated
+ */
+ boolean isSetWarningLevel();
+
+ /**
+ * Returns the value of the '<em><b>Unverified Information</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Unverified Information</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Unverified Information</em>' attribute.
+ * @see #isSetUnverifiedInformation()
+ * @see #unsetUnverifiedInformation()
+ * @see #setUnverifiedInformation(boolean)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause_UnverifiedInformation()
+ * @model unsettable="true" required="true"
+ * @generated
+ */
+ boolean isUnverifiedInformation();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#isUnverifiedInformation <em>Unverified Information</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Unverified Information</em>' attribute.
+ * @see #isSetUnverifiedInformation()
+ * @see #unsetUnverifiedInformation()
+ * @see #isUnverifiedInformation()
+ * @generated
+ */
+ void setUnverifiedInformation(boolean value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#isUnverifiedInformation <em>Unverified Information</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetUnverifiedInformation()
+ * @see #isUnverifiedInformation()
+ * @see #setUnverifiedInformation(boolean)
+ * @generated
+ */
+ void unsetUnverifiedInformation();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#isUnverifiedInformation <em>Unverified Information</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Unverified Information</em>' attribute is set.
+ * @see #unsetUnverifiedInformation()
+ * @see #isUnverifiedInformation()
+ * @see #setUnverifiedInformation(boolean)
+ * @generated
+ */
+ boolean isSetUnverifiedInformation();
+
+ /**
+ * Returns the value of the '<em><b>Sub Cause</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The actual value of this atttribute depends on the mainCause. So based on the mainCause it has to be cast to the related enum.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Sub Cause</em>' attribute.
+ * @see #isSetSubCause()
+ * @see #unsetSubCause()
+ * @see #setSubCause(Object)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause_SubCause()
+ * @model unsettable="true"
+ * @generated
+ */
+ Object getSubCause();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getSubCause <em>Sub Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Sub Cause</em>' attribute.
+ * @see #isSetSubCause()
+ * @see #unsetSubCause()
+ * @see #getSubCause()
+ * @generated
+ */
+ void setSubCause(Object value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getSubCause <em>Sub Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetSubCause()
+ * @see #getSubCause()
+ * @see #setSubCause(Object)
+ * @generated
+ */
+ void unsetSubCause();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getSubCause <em>Sub Cause</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Sub Cause</em>' attribute is set.
+ * @see #unsetSubCause()
+ * @see #getSubCause()
+ * @see #setSubCause(Object)
+ * @generated
+ */
+ boolean isSetSubCause();
+
+ /**
+ * Returns the value of the '<em><b>Length Affected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Length Affected</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Length Affected</em>' attribute.
+ * @see #isSetLengthAffected()
+ * @see #unsetLengthAffected()
+ * @see #setLengthAffected(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause_LengthAffected()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getLengthAffected();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLengthAffected <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Length Affected</em>' attribute.
+ * @see #isSetLengthAffected()
+ * @see #unsetLengthAffected()
+ * @see #getLengthAffected()
+ * @generated
+ */
+ void setLengthAffected(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLengthAffected <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetLengthAffected()
+ * @see #getLengthAffected()
+ * @see #setLengthAffected(Integer)
+ * @generated
+ */
+ void unsetLengthAffected();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLengthAffected <em>Length Affected</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Length Affected</em>' attribute is set.
+ * @see #unsetLengthAffected()
+ * @see #getLengthAffected()
+ * @see #setLengthAffected(Integer)
+ * @generated
+ */
+ boolean isSetLengthAffected();
+
+ /**
+ * Returns the value of the '<em><b>Lane Restrictions</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Lane Restrictions</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Lane Restrictions</em>' containment reference.
+ * @see #isSetLaneRestrictions()
+ * @see #unsetLaneRestrictions()
+ * @see #setLaneRestrictions(LaneRestrictions)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause_LaneRestrictions()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ LaneRestrictions getLaneRestrictions();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLaneRestrictions <em>Lane Restrictions</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Lane Restrictions</em>' containment reference.
+ * @see #isSetLaneRestrictions()
+ * @see #unsetLaneRestrictions()
+ * @see #getLaneRestrictions()
+ * @generated
+ */
+ void setLaneRestrictions(LaneRestrictions value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLaneRestrictions <em>Lane Restrictions</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetLaneRestrictions()
+ * @see #getLaneRestrictions()
+ * @see #setLaneRestrictions(LaneRestrictions)
+ * @generated
+ */
+ void unsetLaneRestrictions();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLaneRestrictions <em>Lane Restrictions</em>}' containment reference is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Lane Restrictions</em>' containment reference is set.
+ * @see #unsetLaneRestrictions()
+ * @see #getLaneRestrictions()
+ * @see #setLaneRestrictions(LaneRestrictions)
+ * @generated
+ */
+ boolean isSetLaneRestrictions();
+
+ /**
+ * Returns the value of the '<em><b>Free Text</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.common.LocalizedString}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Free Text</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Free Text</em>' containment reference list.
+ * @see #isSetFreeText()
+ * @see #unsetFreeText()
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause_FreeText()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ EList<LocalizedString> getFreeText();
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getFreeText <em>Free Text</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetFreeText()
+ * @see #getFreeText()
+ * @generated
+ */
+ void unsetFreeText();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getFreeText <em>Free Text</em>}' containment reference list is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Free Text</em>' containment reference list is set.
+ * @see #unsetFreeText()
+ * @see #getFreeText()
+ * @generated
+ */
+ boolean isSetFreeText();
+
+ /**
+ * Returns the value of the '<em><b>Cause Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Cause Offset</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Cause Offset</em>' attribute.
+ * @see #isSetCauseOffset()
+ * @see #unsetCauseOffset()
+ * @see #setCauseOffset(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getDirectCause_CauseOffset()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getCauseOffset();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getCauseOffset <em>Cause Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Cause Offset</em>' attribute.
+ * @see #isSetCauseOffset()
+ * @see #unsetCauseOffset()
+ * @see #getCauseOffset()
+ * @generated
+ */
+ void setCauseOffset(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getCauseOffset <em>Cause Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetCauseOffset()
+ * @see #getCauseOffset()
+ * @see #setCauseOffset(Integer)
+ * @generated
+ */
+ void unsetCauseOffset();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getCauseOffset <em>Cause Offset</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Cause Offset</em>' attribute is set.
+ * @see #unsetCauseOffset()
+ * @see #getCauseOffset()
+ * @see #setCauseOffset(Integer)
+ * @generated
+ */
+ boolean isSetCauseOffset();
+
+} // DirectCause
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LaneRestrictions.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LaneRestrictions.java
new file mode 100755
index 0000000..856d61b
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LaneRestrictions.java
@@ -0,0 +1,141 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.genivi.trafficincidentsservice.trafficincidenttables.LaneRestrictionType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Lane Restrictions</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getLaneRestrictionType <em>Lane Restriction Type</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getNumberOfLanes <em>Number Of Lanes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getLaneRestrictions()
+ * @model
+ * @generated
+ */
+public interface LaneRestrictions extends EObject {
+ /**
+ * Returns the value of the '<em><b>Lane Restriction Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.LaneRestrictionType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Lane Restriction Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Lane Restriction Type</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.LaneRestrictionType
+ * @see #isSetLaneRestrictionType()
+ * @see #unsetLaneRestrictionType()
+ * @see #setLaneRestrictionType(LaneRestrictionType)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getLaneRestrictions_LaneRestrictionType()
+ * @model unsettable="true"
+ * @generated
+ */
+ LaneRestrictionType getLaneRestrictionType();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getLaneRestrictionType <em>Lane Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Lane Restriction Type</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.LaneRestrictionType
+ * @see #isSetLaneRestrictionType()
+ * @see #unsetLaneRestrictionType()
+ * @see #getLaneRestrictionType()
+ * @generated
+ */
+ void setLaneRestrictionType(LaneRestrictionType value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getLaneRestrictionType <em>Lane Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetLaneRestrictionType()
+ * @see #getLaneRestrictionType()
+ * @see #setLaneRestrictionType(LaneRestrictionType)
+ * @generated
+ */
+ void unsetLaneRestrictionType();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getLaneRestrictionType <em>Lane Restriction Type</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Lane Restriction Type</em>' attribute is set.
+ * @see #unsetLaneRestrictionType()
+ * @see #getLaneRestrictionType()
+ * @see #setLaneRestrictionType(LaneRestrictionType)
+ * @generated
+ */
+ boolean isSetLaneRestrictionType();
+
+ /**
+ * Returns the value of the '<em><b>Number Of Lanes</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Number Of Lanes</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Number Of Lanes</em>' attribute.
+ * @see #isSetNumberOfLanes()
+ * @see #unsetNumberOfLanes()
+ * @see #setNumberOfLanes(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getLaneRestrictions_NumberOfLanes()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getNumberOfLanes();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getNumberOfLanes <em>Number Of Lanes</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Number Of Lanes</em>' attribute.
+ * @see #isSetNumberOfLanes()
+ * @see #unsetNumberOfLanes()
+ * @see #getNumberOfLanes()
+ * @generated
+ */
+ void setNumberOfLanes(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getNumberOfLanes <em>Number Of Lanes</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetNumberOfLanes()
+ * @see #getNumberOfLanes()
+ * @see #setNumberOfLanes(Integer)
+ * @generated
+ */
+ void unsetNumberOfLanes();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getNumberOfLanes <em>Number Of Lanes</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Number Of Lanes</em>' attribute is set.
+ * @see #unsetNumberOfLanes()
+ * @see #getNumberOfLanes()
+ * @see #setNumberOfLanes(Integer)
+ * @generated
+ */
+ boolean isSetNumberOfLanes();
+
+} // LaneRestrictions
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LinkedCause.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LinkedCause.java
new file mode 100755
index 0000000..1c60e45
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/LinkedCause.java
@@ -0,0 +1,80 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Linked Cause</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause#getCauseTrafficIncidentId <em>Cause Traffic Incident Id</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getLinkedCause()
+ * @model
+ * @generated
+ */
+public interface LinkedCause extends Cause {
+ /**
+ * Returns the value of the '<em><b>Cause Traffic Incident Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * There can be a LinkedCause for which the linked TrafficIncident isn't available (to the application) yet. Therefore this atttibute is optional.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Cause Traffic Incident Id</em>' attribute.
+ * @see #isSetCauseTrafficIncidentId()
+ * @see #unsetCauseTrafficIncidentId()
+ * @see #setCauseTrafficIncidentId(String)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getLinkedCause_CauseTrafficIncidentId()
+ * @model unsettable="true"
+ * @generated
+ */
+ String getCauseTrafficIncidentId();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause#getCauseTrafficIncidentId <em>Cause Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Cause Traffic Incident Id</em>' attribute.
+ * @see #isSetCauseTrafficIncidentId()
+ * @see #unsetCauseTrafficIncidentId()
+ * @see #getCauseTrafficIncidentId()
+ * @generated
+ */
+ void setCauseTrafficIncidentId(String value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause#getCauseTrafficIncidentId <em>Cause Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetCauseTrafficIncidentId()
+ * @see #getCauseTrafficIncidentId()
+ * @see #setCauseTrafficIncidentId(String)
+ * @generated
+ */
+ void unsetCauseTrafficIncidentId();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause#getCauseTrafficIncidentId <em>Cause Traffic Incident Id</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Cause Traffic Incident Id</em>' attribute is set.
+ * @see #unsetCauseTrafficIncidentId()
+ * @see #getCauseTrafficIncidentId()
+ * @see #setCauseTrafficIncidentId(String)
+ * @generated
+ */
+ boolean isSetCauseTrafficIncidentId();
+
+} // LinkedCause
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimit.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimit.java
new file mode 100755
index 0000000..d8714e7
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimit.java
@@ -0,0 +1,145 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Temporary Speed Limit</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getTemporarySpeedLimitSections <em>Temporary Speed Limit Sections</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#isUnitsMPH <em>Units MPH</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getOffset <em>Offset</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getApplicability <em>Applicability</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimit()
+ * @model
+ * @generated
+ */
+public interface TemporarySpeedLimit extends EObject {
+ /**
+ * Returns the value of the '<em><b>Temporary Speed Limit Sections</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Temporary Speed Limit Sections</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Temporary Speed Limit Sections</em>' containment reference list.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimit_TemporarySpeedLimitSections()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ EList<TemporarySpeedLimitSection> getTemporarySpeedLimitSections();
+
+ /**
+ * Returns the value of the '<em><b>Units MPH</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Units MPH</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Units MPH</em>' attribute.
+ * @see #setUnitsMPH(boolean)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimit_UnitsMPH()
+ * @model required="true"
+ * @generated
+ */
+ boolean isUnitsMPH();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#isUnitsMPH <em>Units MPH</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Units MPH</em>' attribute.
+ * @see #isUnitsMPH()
+ * @generated
+ */
+ void setUnitsMPH(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Offset</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Offset</em>' attribute.
+ * @see #isSetOffset()
+ * @see #unsetOffset()
+ * @see #setOffset(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimit_Offset()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getOffset();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getOffset <em>Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Offset</em>' attribute.
+ * @see #isSetOffset()
+ * @see #unsetOffset()
+ * @see #getOffset()
+ * @generated
+ */
+ void setOffset(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getOffset <em>Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetOffset()
+ * @see #getOffset()
+ * @see #setOffset(Integer)
+ * @generated
+ */
+ void unsetOffset();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getOffset <em>Offset</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Offset</em>' attribute is set.
+ * @see #unsetOffset()
+ * @see #getOffset()
+ * @see #setOffset(Integer)
+ * @generated
+ */
+ boolean isSetOffset();
+
+ /**
+ * Returns the value of the '<em><b>Applicability</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Applicability</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Applicability</em>' containment reference list.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimit_Applicability()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Applicability> getApplicability();
+
+} // TemporarySpeedLimit
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimitSection.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimitSection.java
new file mode 100755
index 0000000..c106369
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TemporarySpeedLimitSection.java
@@ -0,0 +1,190 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Temporary Speed Limit Section</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValue <em>Speed Limit Value</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValueWet <em>Speed Limit Value Wet</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitLength <em>Speed Limit Length</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimitSection()
+ * @model
+ * @generated
+ */
+public interface TemporarySpeedLimitSection extends EObject {
+ /**
+ * Returns the value of the '<em><b>Speed Limit Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Speed Limit Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Speed Limit Value</em>' attribute.
+ * @see #isSetSpeedLimitValue()
+ * @see #unsetSpeedLimitValue()
+ * @see #setSpeedLimitValue(short)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimitSection_SpeedLimitValue()
+ * @model unsettable="true" required="true"
+ * @generated
+ */
+ short getSpeedLimitValue();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValue <em>Speed Limit Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Speed Limit Value</em>' attribute.
+ * @see #isSetSpeedLimitValue()
+ * @see #unsetSpeedLimitValue()
+ * @see #getSpeedLimitValue()
+ * @generated
+ */
+ void setSpeedLimitValue(short value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValue <em>Speed Limit Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetSpeedLimitValue()
+ * @see #getSpeedLimitValue()
+ * @see #setSpeedLimitValue(short)
+ * @generated
+ */
+ void unsetSpeedLimitValue();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValue <em>Speed Limit Value</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Speed Limit Value</em>' attribute is set.
+ * @see #unsetSpeedLimitValue()
+ * @see #getSpeedLimitValue()
+ * @see #setSpeedLimitValue(short)
+ * @generated
+ */
+ boolean isSetSpeedLimitValue();
+
+ /**
+ * Returns the value of the '<em><b>Speed Limit Value Wet</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Speed Limit Value Wet</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Speed Limit Value Wet</em>' attribute.
+ * @see #isSetSpeedLimitValueWet()
+ * @see #unsetSpeedLimitValueWet()
+ * @see #setSpeedLimitValueWet(short)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimitSection_SpeedLimitValueWet()
+ * @model unsettable="true"
+ * @generated
+ */
+ short getSpeedLimitValueWet();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValueWet <em>Speed Limit Value Wet</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Speed Limit Value Wet</em>' attribute.
+ * @see #isSetSpeedLimitValueWet()
+ * @see #unsetSpeedLimitValueWet()
+ * @see #getSpeedLimitValueWet()
+ * @generated
+ */
+ void setSpeedLimitValueWet(short value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValueWet <em>Speed Limit Value Wet</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetSpeedLimitValueWet()
+ * @see #getSpeedLimitValueWet()
+ * @see #setSpeedLimitValueWet(short)
+ * @generated
+ */
+ void unsetSpeedLimitValueWet();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValueWet <em>Speed Limit Value Wet</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Speed Limit Value Wet</em>' attribute is set.
+ * @see #unsetSpeedLimitValueWet()
+ * @see #getSpeedLimitValueWet()
+ * @see #setSpeedLimitValueWet(short)
+ * @generated
+ */
+ boolean isSetSpeedLimitValueWet();
+
+ /**
+ * Returns the value of the '<em><b>Speed Limit Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Speed Limit Length</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Speed Limit Length</em>' attribute.
+ * @see #isSetSpeedLimitLength()
+ * @see #unsetSpeedLimitLength()
+ * @see #setSpeedLimitLength(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTemporarySpeedLimitSection_SpeedLimitLength()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getSpeedLimitLength();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitLength <em>Speed Limit Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Speed Limit Length</em>' attribute.
+ * @see #isSetSpeedLimitLength()
+ * @see #unsetSpeedLimitLength()
+ * @see #getSpeedLimitLength()
+ * @generated
+ */
+ void setSpeedLimitLength(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitLength <em>Speed Limit Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetSpeedLimitLength()
+ * @see #getSpeedLimitLength()
+ * @see #setSpeedLimitLength(Integer)
+ * @generated
+ */
+ void unsetSpeedLimitLength();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitLength <em>Speed Limit Length</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Speed Limit Length</em>' attribute is set.
+ * @see #unsetSpeedLimitLength()
+ * @see #getSpeedLimitLength()
+ * @see #setSpeedLimitLength(Integer)
+ * @generated
+ */
+ boolean isSetSpeedLimitLength();
+
+} // TemporarySpeedLimitSection
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TrafficIncident.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TrafficIncident.java
new file mode 100755
index 0000000..21085f3
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/TrafficIncident.java
@@ -0,0 +1,886 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import java.util.Date;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.genivi.locref.LocationReference;
+
+import org.genivi.trafficincidentsservice.trafficincidenttables.EffectCode;
+import org.genivi.trafficincidentsservice.trafficincidenttables.Tendency;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Traffic Incident</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * See http://vos.intra.local/display/GENIVI/GENIVI+Traffic+Information+-+Traffic+Incident+Definition for definitions of the meanings of the attributes.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getEffectCode <em>Effect Code</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStartTime <em>Start Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStopTime <em>Stop Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTendency <em>Tendency</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLengthAffected <em>Length Affected</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAverageSpeedAbsolute <em>Average Speed Absolute</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getDelay <em>Delay</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getSegmentSpeedLimit <em>Segment Speed Limit</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getCauses <em>Causes</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAdvices <em>Advices</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getApplicability <em>Applicability</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTrafficIncidentId <em>Traffic Incident Id</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpectedSpeedAbsolute <em>Expected Speed Absolute</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpirationTime <em>Expiration Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getUpdateTime <em>Update Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLocationReference <em>Location Reference</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTemporarySpeedLimit <em>Temporary Speed Limit</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident()
+ * @model
+ * @generated
+ */
+public interface TrafficIncident extends EObject {
+ /**
+ * Returns the value of the '<em><b>Effect Code</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.EffectCode}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Effect Code</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Effect Code</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.EffectCode
+ * @see #isSetEffectCode()
+ * @see #unsetEffectCode()
+ * @see #setEffectCode(EffectCode)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_EffectCode()
+ * @model unsettable="true" required="true"
+ * @generated
+ */
+ EffectCode getEffectCode();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getEffectCode <em>Effect Code</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Effect Code</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.EffectCode
+ * @see #isSetEffectCode()
+ * @see #unsetEffectCode()
+ * @see #getEffectCode()
+ * @generated
+ */
+ void setEffectCode(EffectCode value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getEffectCode <em>Effect Code</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetEffectCode()
+ * @see #getEffectCode()
+ * @see #setEffectCode(EffectCode)
+ * @generated
+ */
+ void unsetEffectCode();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getEffectCode <em>Effect Code</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Effect Code</em>' attribute is set.
+ * @see #unsetEffectCode()
+ * @see #getEffectCode()
+ * @see #setEffectCode(EffectCode)
+ * @generated
+ */
+ boolean isSetEffectCode();
+
+ /**
+ * Returns the value of the '<em><b>Start Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Start Time</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Start Time</em>' attribute.
+ * @see #isSetStartTime()
+ * @see #unsetStartTime()
+ * @see #setStartTime(Date)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_StartTime()
+ * @model unsettable="true"
+ * @generated
+ */
+ Date getStartTime();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStartTime <em>Start Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Start Time</em>' attribute.
+ * @see #isSetStartTime()
+ * @see #unsetStartTime()
+ * @see #getStartTime()
+ * @generated
+ */
+ void setStartTime(Date value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStartTime <em>Start Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetStartTime()
+ * @see #getStartTime()
+ * @see #setStartTime(Date)
+ * @generated
+ */
+ void unsetStartTime();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStartTime <em>Start Time</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Start Time</em>' attribute is set.
+ * @see #unsetStartTime()
+ * @see #getStartTime()
+ * @see #setStartTime(Date)
+ * @generated
+ */
+ boolean isSetStartTime();
+
+ /**
+ * Returns the value of the '<em><b>Stop Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stop Time</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stop Time</em>' attribute.
+ * @see #isSetStopTime()
+ * @see #unsetStopTime()
+ * @see #setStopTime(Date)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_StopTime()
+ * @model unsettable="true"
+ * @generated
+ */
+ Date getStopTime();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStopTime <em>Stop Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Stop Time</em>' attribute.
+ * @see #isSetStopTime()
+ * @see #unsetStopTime()
+ * @see #getStopTime()
+ * @generated
+ */
+ void setStopTime(Date value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStopTime <em>Stop Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetStopTime()
+ * @see #getStopTime()
+ * @see #setStopTime(Date)
+ * @generated
+ */
+ void unsetStopTime();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStopTime <em>Stop Time</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Stop Time</em>' attribute is set.
+ * @see #unsetStopTime()
+ * @see #getStopTime()
+ * @see #setStopTime(Date)
+ * @generated
+ */
+ boolean isSetStopTime();
+
+ /**
+ * Returns the value of the '<em><b>Tendency</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.Tendency}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Tendency</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Tendency</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.Tendency
+ * @see #isSetTendency()
+ * @see #unsetTendency()
+ * @see #setTendency(Tendency)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_Tendency()
+ * @model unsettable="true"
+ * @generated
+ */
+ Tendency getTendency();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTendency <em>Tendency</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Tendency</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.Tendency
+ * @see #isSetTendency()
+ * @see #unsetTendency()
+ * @see #getTendency()
+ * @generated
+ */
+ void setTendency(Tendency value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTendency <em>Tendency</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetTendency()
+ * @see #getTendency()
+ * @see #setTendency(Tendency)
+ * @generated
+ */
+ void unsetTendency();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTendency <em>Tendency</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Tendency</em>' attribute is set.
+ * @see #unsetTendency()
+ * @see #getTendency()
+ * @see #setTendency(Tendency)
+ * @generated
+ */
+ boolean isSetTendency();
+
+ /**
+ * Returns the value of the '<em><b>Length Affected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Length Affected</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Length Affected</em>' attribute.
+ * @see #isSetLengthAffected()
+ * @see #unsetLengthAffected()
+ * @see #setLengthAffected(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_LengthAffected()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getLengthAffected();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLengthAffected <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Length Affected</em>' attribute.
+ * @see #isSetLengthAffected()
+ * @see #unsetLengthAffected()
+ * @see #getLengthAffected()
+ * @generated
+ */
+ void setLengthAffected(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLengthAffected <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetLengthAffected()
+ * @see #getLengthAffected()
+ * @see #setLengthAffected(Integer)
+ * @generated
+ */
+ void unsetLengthAffected();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLengthAffected <em>Length Affected</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Length Affected</em>' attribute is set.
+ * @see #unsetLengthAffected()
+ * @see #getLengthAffected()
+ * @see #setLengthAffected(Integer)
+ * @generated
+ */
+ boolean isSetLengthAffected();
+
+ /**
+ * Returns the value of the '<em><b>Average Speed Absolute</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Average Speed Absolute</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Average Speed Absolute</em>' attribute.
+ * @see #isSetAverageSpeedAbsolute()
+ * @see #unsetAverageSpeedAbsolute()
+ * @see #setAverageSpeedAbsolute(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_AverageSpeedAbsolute()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getAverageSpeedAbsolute();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAverageSpeedAbsolute <em>Average Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Average Speed Absolute</em>' attribute.
+ * @see #isSetAverageSpeedAbsolute()
+ * @see #unsetAverageSpeedAbsolute()
+ * @see #getAverageSpeedAbsolute()
+ * @generated
+ */
+ void setAverageSpeedAbsolute(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAverageSpeedAbsolute <em>Average Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetAverageSpeedAbsolute()
+ * @see #getAverageSpeedAbsolute()
+ * @see #setAverageSpeedAbsolute(Integer)
+ * @generated
+ */
+ void unsetAverageSpeedAbsolute();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAverageSpeedAbsolute <em>Average Speed Absolute</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Average Speed Absolute</em>' attribute is set.
+ * @see #unsetAverageSpeedAbsolute()
+ * @see #getAverageSpeedAbsolute()
+ * @see #setAverageSpeedAbsolute(Integer)
+ * @generated
+ */
+ boolean isSetAverageSpeedAbsolute();
+
+ /**
+ * Returns the value of the '<em><b>Delay</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Delay</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Delay</em>' attribute.
+ * @see #isSetDelay()
+ * @see #unsetDelay()
+ * @see #setDelay(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_Delay()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getDelay();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getDelay <em>Delay</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Delay</em>' attribute.
+ * @see #isSetDelay()
+ * @see #unsetDelay()
+ * @see #getDelay()
+ * @generated
+ */
+ void setDelay(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getDelay <em>Delay</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetDelay()
+ * @see #getDelay()
+ * @see #setDelay(Integer)
+ * @generated
+ */
+ void unsetDelay();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getDelay <em>Delay</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Delay</em>' attribute is set.
+ * @see #unsetDelay()
+ * @see #getDelay()
+ * @see #setDelay(Integer)
+ * @generated
+ */
+ boolean isSetDelay();
+
+ /**
+ * Returns the value of the '<em><b>Segment Speed Limit</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Segment Speed Limit</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Segment Speed Limit</em>' attribute.
+ * @see #isSetSegmentSpeedLimit()
+ * @see #unsetSegmentSpeedLimit()
+ * @see #setSegmentSpeedLimit(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_SegmentSpeedLimit()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getSegmentSpeedLimit();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getSegmentSpeedLimit <em>Segment Speed Limit</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Segment Speed Limit</em>' attribute.
+ * @see #isSetSegmentSpeedLimit()
+ * @see #unsetSegmentSpeedLimit()
+ * @see #getSegmentSpeedLimit()
+ * @generated
+ */
+ void setSegmentSpeedLimit(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getSegmentSpeedLimit <em>Segment Speed Limit</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetSegmentSpeedLimit()
+ * @see #getSegmentSpeedLimit()
+ * @see #setSegmentSpeedLimit(Integer)
+ * @generated
+ */
+ void unsetSegmentSpeedLimit();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getSegmentSpeedLimit <em>Segment Speed Limit</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Segment Speed Limit</em>' attribute is set.
+ * @see #unsetSegmentSpeedLimit()
+ * @see #getSegmentSpeedLimit()
+ * @see #setSegmentSpeedLimit(Integer)
+ * @generated
+ */
+ boolean isSetSegmentSpeedLimit();
+
+ /**
+ * Returns the value of the '<em><b>Causes</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Causes</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Causes</em>' containment reference list.
+ * @see #isSetCauses()
+ * @see #unsetCauses()
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_Causes()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ EList<Cause> getCauses();
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getCauses <em>Causes</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetCauses()
+ * @see #getCauses()
+ * @generated
+ */
+ void unsetCauses();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getCauses <em>Causes</em>}' containment reference list is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Causes</em>' containment reference list is set.
+ * @see #unsetCauses()
+ * @see #getCauses()
+ * @generated
+ */
+ boolean isSetCauses();
+
+ /**
+ * Returns the value of the '<em><b>Advices</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Advices</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Advices</em>' containment reference list.
+ * @see #isSetAdvices()
+ * @see #unsetAdvices()
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_Advices()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ EList<Advice> getAdvices();
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAdvices <em>Advices</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetAdvices()
+ * @see #getAdvices()
+ * @generated
+ */
+ void unsetAdvices();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAdvices <em>Advices</em>}' containment reference list is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Advices</em>' containment reference list is set.
+ * @see #unsetAdvices()
+ * @see #getAdvices()
+ * @generated
+ */
+ boolean isSetAdvices();
+
+ /**
+ * Returns the value of the '<em><b>Applicability</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Applicability</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Applicability</em>' containment reference list.
+ * @see #isSetApplicability()
+ * @see #unsetApplicability()
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_Applicability()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ EList<Applicability> getApplicability();
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getApplicability <em>Applicability</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetApplicability()
+ * @see #getApplicability()
+ * @generated
+ */
+ void unsetApplicability();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getApplicability <em>Applicability</em>}' containment reference list is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Applicability</em>' containment reference list is set.
+ * @see #unsetApplicability()
+ * @see #getApplicability()
+ * @generated
+ */
+ boolean isSetApplicability();
+
+ /**
+ * Returns the value of the '<em><b>Traffic Incident Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Traffic Incident Id</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Traffic Incident Id</em>' attribute.
+ * @see #isSetTrafficIncidentId()
+ * @see #unsetTrafficIncidentId()
+ * @see #setTrafficIncidentId(String)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_TrafficIncidentId()
+ * @model unsettable="true"
+ * @generated
+ */
+ String getTrafficIncidentId();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTrafficIncidentId <em>Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Traffic Incident Id</em>' attribute.
+ * @see #isSetTrafficIncidentId()
+ * @see #unsetTrafficIncidentId()
+ * @see #getTrafficIncidentId()
+ * @generated
+ */
+ void setTrafficIncidentId(String value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTrafficIncidentId <em>Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetTrafficIncidentId()
+ * @see #getTrafficIncidentId()
+ * @see #setTrafficIncidentId(String)
+ * @generated
+ */
+ void unsetTrafficIncidentId();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTrafficIncidentId <em>Traffic Incident Id</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Traffic Incident Id</em>' attribute is set.
+ * @see #unsetTrafficIncidentId()
+ * @see #getTrafficIncidentId()
+ * @see #setTrafficIncidentId(String)
+ * @generated
+ */
+ boolean isSetTrafficIncidentId();
+
+ /**
+ * Returns the value of the '<em><b>Expected Speed Absolute</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Expected Speed Absolute</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Expected Speed Absolute</em>' attribute.
+ * @see #isSetExpectedSpeedAbsolute()
+ * @see #unsetExpectedSpeedAbsolute()
+ * @see #setExpectedSpeedAbsolute(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_ExpectedSpeedAbsolute()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getExpectedSpeedAbsolute();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpectedSpeedAbsolute <em>Expected Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Expected Speed Absolute</em>' attribute.
+ * @see #isSetExpectedSpeedAbsolute()
+ * @see #unsetExpectedSpeedAbsolute()
+ * @see #getExpectedSpeedAbsolute()
+ * @generated
+ */
+ void setExpectedSpeedAbsolute(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpectedSpeedAbsolute <em>Expected Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetExpectedSpeedAbsolute()
+ * @see #getExpectedSpeedAbsolute()
+ * @see #setExpectedSpeedAbsolute(Integer)
+ * @generated
+ */
+ void unsetExpectedSpeedAbsolute();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpectedSpeedAbsolute <em>Expected Speed Absolute</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Expected Speed Absolute</em>' attribute is set.
+ * @see #unsetExpectedSpeedAbsolute()
+ * @see #getExpectedSpeedAbsolute()
+ * @see #setExpectedSpeedAbsolute(Integer)
+ * @generated
+ */
+ boolean isSetExpectedSpeedAbsolute();
+
+ /**
+ * Returns the value of the '<em><b>Expiration Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Expiration Time</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Expiration Time</em>' attribute.
+ * @see #isSetExpirationTime()
+ * @see #unsetExpirationTime()
+ * @see #setExpirationTime(Date)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_ExpirationTime()
+ * @model unsettable="true"
+ * @generated
+ */
+ Date getExpirationTime();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpirationTime <em>Expiration Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Expiration Time</em>' attribute.
+ * @see #isSetExpirationTime()
+ * @see #unsetExpirationTime()
+ * @see #getExpirationTime()
+ * @generated
+ */
+ void setExpirationTime(Date value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpirationTime <em>Expiration Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetExpirationTime()
+ * @see #getExpirationTime()
+ * @see #setExpirationTime(Date)
+ * @generated
+ */
+ void unsetExpirationTime();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpirationTime <em>Expiration Time</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Expiration Time</em>' attribute is set.
+ * @see #unsetExpirationTime()
+ * @see #getExpirationTime()
+ * @see #setExpirationTime(Date)
+ * @generated
+ */
+ boolean isSetExpirationTime();
+
+ /**
+ * Returns the value of the '<em><b>Update Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Update Time</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Update Time</em>' attribute.
+ * @see #isSetUpdateTime()
+ * @see #unsetUpdateTime()
+ * @see #setUpdateTime(Date)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_UpdateTime()
+ * @model unsettable="true"
+ * @generated
+ */
+ Date getUpdateTime();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getUpdateTime <em>Update Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Update Time</em>' attribute.
+ * @see #isSetUpdateTime()
+ * @see #unsetUpdateTime()
+ * @see #getUpdateTime()
+ * @generated
+ */
+ void setUpdateTime(Date value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getUpdateTime <em>Update Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetUpdateTime()
+ * @see #getUpdateTime()
+ * @see #setUpdateTime(Date)
+ * @generated
+ */
+ void unsetUpdateTime();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getUpdateTime <em>Update Time</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Update Time</em>' attribute is set.
+ * @see #unsetUpdateTime()
+ * @see #getUpdateTime()
+ * @see #setUpdateTime(Date)
+ * @generated
+ */
+ boolean isSetUpdateTime();
+
+ /**
+ * Returns the value of the '<em><b>Location Reference</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Location Reference</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Location Reference</em>' containment reference.
+ * @see #isSetLocationReference()
+ * @see #unsetLocationReference()
+ * @see #setLocationReference(LocationReference)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_LocationReference()
+ * @model containment="true" unsettable="true" required="true"
+ * @generated
+ */
+ LocationReference getLocationReference();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLocationReference <em>Location Reference</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Location Reference</em>' containment reference.
+ * @see #isSetLocationReference()
+ * @see #unsetLocationReference()
+ * @see #getLocationReference()
+ * @generated
+ */
+ void setLocationReference(LocationReference value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLocationReference <em>Location Reference</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetLocationReference()
+ * @see #getLocationReference()
+ * @see #setLocationReference(LocationReference)
+ * @generated
+ */
+ void unsetLocationReference();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLocationReference <em>Location Reference</em>}' containment reference is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Location Reference</em>' containment reference is set.
+ * @see #unsetLocationReference()
+ * @see #getLocationReference()
+ * @see #setLocationReference(LocationReference)
+ * @generated
+ */
+ boolean isSetLocationReference();
+
+ /**
+ * Returns the value of the '<em><b>Temporary Speed Limit</b></em>' containment reference list.
+ * The list contents are of type {@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Temporary Speed Limit</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Temporary Speed Limit</em>' containment reference list.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getTrafficIncident_TemporarySpeedLimit()
+ * @model containment="true"
+ * @generated
+ */
+ EList<TemporarySpeedLimit> getTemporarySpeedLimit();
+
+} // TrafficIncident
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/VehicleRelatedRestriction.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/VehicleRelatedRestriction.java
new file mode 100755
index 0000000..a0a5930
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/VehicleRelatedRestriction.java
@@ -0,0 +1,197 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.genivi.locref.LocationReference;
+
+import org.genivi.trafficincidentsservice.trafficincidenttables.RestrictionType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Vehicle Related Restriction</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionType <em>Restriction Type</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionValue <em>Restriction Value</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionLocationReference <em>Restriction Location Reference</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getVehicleRelatedRestriction()
+ * @model
+ * @generated
+ */
+public interface VehicleRelatedRestriction extends EObject {
+ /**
+ * Returns the value of the '<em><b>Restriction Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.genivi.trafficincidentsservice.trafficincidenttables.RestrictionType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Restriction Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Restriction Type</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.RestrictionType
+ * @see #isSetRestrictionType()
+ * @see #unsetRestrictionType()
+ * @see #setRestrictionType(RestrictionType)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getVehicleRelatedRestriction_RestrictionType()
+ * @model unsettable="true" required="true"
+ * @generated
+ */
+ RestrictionType getRestrictionType();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionType <em>Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Restriction Type</em>' attribute.
+ * @see org.genivi.trafficincidentsservice.trafficincidenttables.RestrictionType
+ * @see #isSetRestrictionType()
+ * @see #unsetRestrictionType()
+ * @see #getRestrictionType()
+ * @generated
+ */
+ void setRestrictionType(RestrictionType value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionType <em>Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetRestrictionType()
+ * @see #getRestrictionType()
+ * @see #setRestrictionType(RestrictionType)
+ * @generated
+ */
+ void unsetRestrictionType();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionType <em>Restriction Type</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Restriction Type</em>' attribute is set.
+ * @see #unsetRestrictionType()
+ * @see #getRestrictionType()
+ * @see #setRestrictionType(RestrictionType)
+ * @generated
+ */
+ boolean isSetRestrictionType();
+
+ /**
+ * Returns the value of the '<em><b>Restriction Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Restriction Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Restriction Value</em>' attribute.
+ * @see #isSetRestrictionValue()
+ * @see #unsetRestrictionValue()
+ * @see #setRestrictionValue(Integer)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getVehicleRelatedRestriction_RestrictionValue()
+ * @model unsettable="true"
+ * @generated
+ */
+ Integer getRestrictionValue();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionValue <em>Restriction Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Restriction Value</em>' attribute.
+ * @see #isSetRestrictionValue()
+ * @see #unsetRestrictionValue()
+ * @see #getRestrictionValue()
+ * @generated
+ */
+ void setRestrictionValue(Integer value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionValue <em>Restriction Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetRestrictionValue()
+ * @see #getRestrictionValue()
+ * @see #setRestrictionValue(Integer)
+ * @generated
+ */
+ void unsetRestrictionValue();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionValue <em>Restriction Value</em>}' attribute is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Restriction Value</em>' attribute is set.
+ * @see #unsetRestrictionValue()
+ * @see #getRestrictionValue()
+ * @see #setRestrictionValue(Integer)
+ * @generated
+ */
+ boolean isSetRestrictionValue();
+
+ /**
+ * Returns the value of the '<em><b>Restriction Location Reference</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Restriction Location Reference</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Restriction Location Reference</em>' containment reference.
+ * @see #isSetRestrictionLocationReference()
+ * @see #unsetRestrictionLocationReference()
+ * @see #setRestrictionLocationReference(LocationReference)
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#getVehicleRelatedRestriction_RestrictionLocationReference()
+ * @model containment="true" unsettable="true"
+ * @generated
+ */
+ LocationReference getRestrictionLocationReference();
+
+ /**
+ * Sets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionLocationReference <em>Restriction Location Reference</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Restriction Location Reference</em>' containment reference.
+ * @see #isSetRestrictionLocationReference()
+ * @see #unsetRestrictionLocationReference()
+ * @see #getRestrictionLocationReference()
+ * @generated
+ */
+ void setRestrictionLocationReference(LocationReference value);
+
+ /**
+ * Unsets the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionLocationReference <em>Restriction Location Reference</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSetRestrictionLocationReference()
+ * @see #getRestrictionLocationReference()
+ * @see #setRestrictionLocationReference(LocationReference)
+ * @generated
+ */
+ void unsetRestrictionLocationReference();
+
+ /**
+ * Returns whether the value of the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionLocationReference <em>Restriction Location Reference</em>}' containment reference is set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return whether the value of the '<em>Restriction Location Reference</em>' containment reference is set.
+ * @see #unsetRestrictionLocationReference()
+ * @see #getRestrictionLocationReference()
+ * @see #setRestrictionLocationReference(LocationReference)
+ * @generated
+ */
+ boolean isSetRestrictionLocationReference();
+
+} // VehicleRelatedRestriction
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentFactory.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentFactory.java
new file mode 100755
index 0000000..368d8f4
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentFactory.java
@@ -0,0 +1,128 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage
+ * @generated
+ */
+public interface XTrafficIncidentFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ XTrafficIncidentFactory eINSTANCE = org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Traffic Incident</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Traffic Incident</em>'.
+ * @generated
+ */
+ TrafficIncident createTrafficIncident();
+
+ /**
+ * Returns a new object of class '<em>Cause</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Cause</em>'.
+ * @generated
+ */
+ Cause createCause();
+
+ /**
+ * Returns a new object of class '<em>Linked Cause</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Linked Cause</em>'.
+ * @generated
+ */
+ LinkedCause createLinkedCause();
+
+ /**
+ * Returns a new object of class '<em>Direct Cause</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Direct Cause</em>'.
+ * @generated
+ */
+ DirectCause createDirectCause();
+
+ /**
+ * Returns a new object of class '<em>Lane Restrictions</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Lane Restrictions</em>'.
+ * @generated
+ */
+ LaneRestrictions createLaneRestrictions();
+
+ /**
+ * Returns a new object of class '<em>Advice</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Advice</em>'.
+ * @generated
+ */
+ Advice createAdvice();
+
+ /**
+ * Returns a new object of class '<em>Applicability</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Applicability</em>'.
+ * @generated
+ */
+ Applicability createApplicability();
+
+ /**
+ * Returns a new object of class '<em>Vehicle Related Restriction</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Vehicle Related Restriction</em>'.
+ * @generated
+ */
+ VehicleRelatedRestriction createVehicleRelatedRestriction();
+
+ /**
+ * Returns a new object of class '<em>Temporary Speed Limit Section</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Temporary Speed Limit Section</em>'.
+ * @generated
+ */
+ TemporarySpeedLimitSection createTemporarySpeedLimitSection();
+
+ /**
+ * Returns a new object of class '<em>Temporary Speed Limit</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Temporary Speed Limit</em>'.
+ * @generated
+ */
+ TemporarySpeedLimit createTemporarySpeedLimit();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ XTrafficIncidentPackage getXTrafficIncidentPackage();
+
+} //XTrafficIncidentFactory
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentPackage.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentPackage.java
new file mode 100755
index 0000000..41c774c
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/XTrafficIncidentPackage.java
@@ -0,0 +1,1730 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentFactory
+ * @model kind="package"
+ * annotation="GenModel documentation='Copyright (C) 2013 TomTom International B.V.\r\n\r\nThis Source Code Form is subject to the terms of the Mozilla Public\r\nLicense, v. 2.0. If a copy of the MPL was not distributed with this\r\nfile, You can obtain one at http://mozilla.org/MPL/2.0/.'"
+ * @generated
+ */
+public interface XTrafficIncidentPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "trafficincident";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://org.genivi.xtrafficinfo";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "TrafficIncident";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ XTrafficIncidentPackage eINSTANCE = org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl <em>Traffic Incident</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getTrafficIncident()
+ * @generated
+ */
+ int TRAFFIC_INCIDENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Effect Code</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__EFFECT_CODE = 0;
+
+ /**
+ * The feature id for the '<em><b>Start Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__START_TIME = 1;
+
+ /**
+ * The feature id for the '<em><b>Stop Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__STOP_TIME = 2;
+
+ /**
+ * The feature id for the '<em><b>Tendency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__TENDENCY = 3;
+
+ /**
+ * The feature id for the '<em><b>Length Affected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__LENGTH_AFFECTED = 4;
+
+ /**
+ * The feature id for the '<em><b>Average Speed Absolute</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE = 5;
+
+ /**
+ * The feature id for the '<em><b>Delay</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__DELAY = 6;
+
+ /**
+ * The feature id for the '<em><b>Segment Speed Limit</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT = 7;
+
+ /**
+ * The feature id for the '<em><b>Causes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__CAUSES = 8;
+
+ /**
+ * The feature id for the '<em><b>Advices</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__ADVICES = 9;
+
+ /**
+ * The feature id for the '<em><b>Applicability</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__APPLICABILITY = 10;
+
+ /**
+ * The feature id for the '<em><b>Traffic Incident Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID = 11;
+
+ /**
+ * The feature id for the '<em><b>Expected Speed Absolute</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE = 12;
+
+ /**
+ * The feature id for the '<em><b>Expiration Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__EXPIRATION_TIME = 13;
+
+ /**
+ * The feature id for the '<em><b>Update Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__UPDATE_TIME = 14;
+
+ /**
+ * The feature id for the '<em><b>Location Reference</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__LOCATION_REFERENCE = 15;
+
+ /**
+ * The feature id for the '<em><b>Temporary Speed Limit</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT = 16;
+
+ /**
+ * The number of structural features of the '<em>Traffic Incident</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRAFFIC_INCIDENT_FEATURE_COUNT = 17;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.CauseImpl <em>Cause</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.CauseImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getCause()
+ * @generated
+ */
+ int CAUSE = 1;
+
+ /**
+ * The feature id for the '<em><b>Main Cause</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CAUSE__MAIN_CAUSE = 0;
+
+ /**
+ * The number of structural features of the '<em>Cause</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CAUSE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LinkedCauseImpl <em>Linked Cause</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LinkedCauseImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getLinkedCause()
+ * @generated
+ */
+ int LINKED_CAUSE = 2;
+
+ /**
+ * The feature id for the '<em><b>Main Cause</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINKED_CAUSE__MAIN_CAUSE = CAUSE__MAIN_CAUSE;
+
+ /**
+ * The feature id for the '<em><b>Cause Traffic Incident Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID = CAUSE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Linked Cause</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LINKED_CAUSE_FEATURE_COUNT = CAUSE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl <em>Direct Cause</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getDirectCause()
+ * @generated
+ */
+ int DIRECT_CAUSE = 3;
+
+ /**
+ * The feature id for the '<em><b>Main Cause</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__MAIN_CAUSE = CAUSE__MAIN_CAUSE;
+
+ /**
+ * The feature id for the '<em><b>Warning Level</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__WARNING_LEVEL = CAUSE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Unverified Information</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__UNVERIFIED_INFORMATION = CAUSE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Sub Cause</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__SUB_CAUSE = CAUSE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Length Affected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__LENGTH_AFFECTED = CAUSE_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Lane Restrictions</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__LANE_RESTRICTIONS = CAUSE_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Free Text</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__FREE_TEXT = CAUSE_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Cause Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE__CAUSE_OFFSET = CAUSE_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the '<em>Direct Cause</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECT_CAUSE_FEATURE_COUNT = CAUSE_FEATURE_COUNT + 7;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LaneRestrictionsImpl <em>Lane Restrictions</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LaneRestrictionsImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getLaneRestrictions()
+ * @generated
+ */
+ int LANE_RESTRICTIONS = 4;
+
+ /**
+ * The feature id for the '<em><b>Lane Restriction Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Number Of Lanes</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LANE_RESTRICTIONS__NUMBER_OF_LANES = 1;
+
+ /**
+ * The number of structural features of the '<em>Lane Restrictions</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LANE_RESTRICTIONS_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl <em>Advice</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getAdvice()
+ * @generated
+ */
+ int ADVICE = 5;
+
+ /**
+ * The feature id for the '<em><b>Main Advice</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADVICE__MAIN_ADVICE = 0;
+
+ /**
+ * The feature id for the '<em><b>Sub Advice</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADVICE__SUB_ADVICE = 1;
+
+ /**
+ * The feature id for the '<em><b>Free Text</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADVICE__FREE_TEXT = 2;
+
+ /**
+ * The feature id for the '<em><b>Applicability</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADVICE__APPLICABILITY = 3;
+
+ /**
+ * The number of structural features of the '<em>Advice</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADVICE_FEATURE_COUNT = 4;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.ApplicabilityImpl <em>Applicability</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.ApplicabilityImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getApplicability()
+ * @generated
+ */
+ int APPLICABILITY = 6;
+
+ /**
+ * The feature id for the '<em><b>Vehicle Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int APPLICABILITY__VEHICLE_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Vehicle Related Restrictions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS = 1;
+
+ /**
+ * The number of structural features of the '<em>Applicability</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int APPLICABILITY_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.VehicleRelatedRestrictionImpl <em>Vehicle Related Restriction</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.VehicleRelatedRestrictionImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getVehicleRelatedRestriction()
+ * @generated
+ */
+ int VEHICLE_RELATED_RESTRICTION = 7;
+
+ /**
+ * The feature id for the '<em><b>Restriction Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Restriction Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE = 1;
+
+ /**
+ * The feature id for the '<em><b>Restriction Location Reference</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE = 2;
+
+ /**
+ * The number of structural features of the '<em>Vehicle Related Restriction</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEHICLE_RELATED_RESTRICTION_FEATURE_COUNT = 3;
+
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitSectionImpl <em>Temporary Speed Limit Section</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitSectionImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getTemporarySpeedLimitSection()
+ * @generated
+ */
+ int TEMPORARY_SPEED_LIMIT_SECTION = 8;
+
+ /**
+ * The feature id for the '<em><b>Speed Limit Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE = 0;
+
+ /**
+ * The feature id for the '<em><b>Speed Limit Value Wet</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET = 1;
+
+ /**
+ * The feature id for the '<em><b>Speed Limit Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH = 2;
+
+ /**
+ * The number of structural features of the '<em>Temporary Speed Limit Section</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT_SECTION_FEATURE_COUNT = 3;
+
+ /**
+ * The meta object id for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl <em>Temporary Speed Limit</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getTemporarySpeedLimit()
+ * @generated
+ */
+ int TEMPORARY_SPEED_LIMIT = 9;
+
+ /**
+ * The feature id for the '<em><b>Temporary Speed Limit Sections</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS = 0;
+
+ /**
+ * The feature id for the '<em><b>Units MPH</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT__UNITS_MPH = 1;
+
+ /**
+ * The feature id for the '<em><b>Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT__OFFSET = 2;
+
+ /**
+ * The feature id for the '<em><b>Applicability</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT__APPLICABILITY = 3;
+
+ /**
+ * The number of structural features of the '<em>Temporary Speed Limit</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEMPORARY_SPEED_LIMIT_FEATURE_COUNT = 4;
+
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident <em>Traffic Incident</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Traffic Incident</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident
+ * @generated
+ */
+ EClass getTrafficIncident();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getEffectCode <em>Effect Code</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Effect Code</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getEffectCode()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_EffectCode();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStartTime <em>Start Time</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Start Time</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStartTime()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_StartTime();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStopTime <em>Stop Time</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Stop Time</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getStopTime()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_StopTime();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTendency <em>Tendency</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Tendency</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTendency()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_Tendency();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLengthAffected <em>Length Affected</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Length Affected</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLengthAffected()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_LengthAffected();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAverageSpeedAbsolute <em>Average Speed Absolute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Average Speed Absolute</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAverageSpeedAbsolute()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_AverageSpeedAbsolute();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getDelay <em>Delay</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Delay</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getDelay()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_Delay();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getSegmentSpeedLimit <em>Segment Speed Limit</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Segment Speed Limit</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getSegmentSpeedLimit()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_SegmentSpeedLimit();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getCauses <em>Causes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Causes</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getCauses()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EReference getTrafficIncident_Causes();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAdvices <em>Advices</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Advices</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getAdvices()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EReference getTrafficIncident_Advices();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getApplicability <em>Applicability</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Applicability</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getApplicability()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EReference getTrafficIncident_Applicability();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTrafficIncidentId <em>Traffic Incident Id</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Traffic Incident Id</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTrafficIncidentId()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_TrafficIncidentId();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpectedSpeedAbsolute <em>Expected Speed Absolute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Expected Speed Absolute</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpectedSpeedAbsolute()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_ExpectedSpeedAbsolute();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpirationTime <em>Expiration Time</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Expiration Time</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getExpirationTime()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_ExpirationTime();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getUpdateTime <em>Update Time</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Update Time</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getUpdateTime()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EAttribute getTrafficIncident_UpdateTime();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLocationReference <em>Location Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Location Reference</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getLocationReference()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EReference getTrafficIncident_LocationReference();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTemporarySpeedLimit <em>Temporary Speed Limit</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Temporary Speed Limit</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident#getTemporarySpeedLimit()
+ * @see #getTrafficIncident()
+ * @generated
+ */
+ EReference getTrafficIncident_TemporarySpeedLimit();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause <em>Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Cause</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause
+ * @generated
+ */
+ EClass getCause();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause#getMainCause <em>Main Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Main Cause</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause#getMainCause()
+ * @see #getCause()
+ * @generated
+ */
+ EAttribute getCause_MainCause();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause <em>Linked Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Linked Cause</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause
+ * @generated
+ */
+ EClass getLinkedCause();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause#getCauseTrafficIncidentId <em>Cause Traffic Incident Id</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Cause Traffic Incident Id</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause#getCauseTrafficIncidentId()
+ * @see #getLinkedCause()
+ * @generated
+ */
+ EAttribute getLinkedCause_CauseTrafficIncidentId();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause <em>Direct Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Direct Cause</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause
+ * @generated
+ */
+ EClass getDirectCause();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getWarningLevel <em>Warning Level</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Warning Level</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getWarningLevel()
+ * @see #getDirectCause()
+ * @generated
+ */
+ EAttribute getDirectCause_WarningLevel();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#isUnverifiedInformation <em>Unverified Information</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Unverified Information</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#isUnverifiedInformation()
+ * @see #getDirectCause()
+ * @generated
+ */
+ EAttribute getDirectCause_UnverifiedInformation();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getSubCause <em>Sub Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Sub Cause</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getSubCause()
+ * @see #getDirectCause()
+ * @generated
+ */
+ EAttribute getDirectCause_SubCause();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLengthAffected <em>Length Affected</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Length Affected</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLengthAffected()
+ * @see #getDirectCause()
+ * @generated
+ */
+ EAttribute getDirectCause_LengthAffected();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLaneRestrictions <em>Lane Restrictions</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Lane Restrictions</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getLaneRestrictions()
+ * @see #getDirectCause()
+ * @generated
+ */
+ EReference getDirectCause_LaneRestrictions();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getFreeText <em>Free Text</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Free Text</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getFreeText()
+ * @see #getDirectCause()
+ * @generated
+ */
+ EReference getDirectCause_FreeText();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getCauseOffset <em>Cause Offset</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Cause Offset</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause#getCauseOffset()
+ * @see #getDirectCause()
+ * @generated
+ */
+ EAttribute getDirectCause_CauseOffset();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions <em>Lane Restrictions</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Lane Restrictions</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions
+ * @generated
+ */
+ EClass getLaneRestrictions();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getLaneRestrictionType <em>Lane Restriction Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Lane Restriction Type</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getLaneRestrictionType()
+ * @see #getLaneRestrictions()
+ * @generated
+ */
+ EAttribute getLaneRestrictions_LaneRestrictionType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getNumberOfLanes <em>Number Of Lanes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Number Of Lanes</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions#getNumberOfLanes()
+ * @see #getLaneRestrictions()
+ * @generated
+ */
+ EAttribute getLaneRestrictions_NumberOfLanes();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice <em>Advice</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Advice</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice
+ * @generated
+ */
+ EClass getAdvice();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getMainAdvice <em>Main Advice</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Main Advice</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getMainAdvice()
+ * @see #getAdvice()
+ * @generated
+ */
+ EAttribute getAdvice_MainAdvice();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getSubAdvice <em>Sub Advice</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Sub Advice</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getSubAdvice()
+ * @see #getAdvice()
+ * @generated
+ */
+ EAttribute getAdvice_SubAdvice();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getFreeText <em>Free Text</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Free Text</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getFreeText()
+ * @see #getAdvice()
+ * @generated
+ */
+ EReference getAdvice_FreeText();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getApplicability <em>Applicability</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Applicability</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice#getApplicability()
+ * @see #getAdvice()
+ * @generated
+ */
+ EReference getAdvice_Applicability();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability <em>Applicability</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Applicability</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability
+ * @generated
+ */
+ EClass getApplicability();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleType <em>Vehicle Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Vehicle Type</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleType()
+ * @see #getApplicability()
+ * @generated
+ */
+ EAttribute getApplicability_VehicleType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleRelatedRestrictions <em>Vehicle Related Restrictions</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Vehicle Related Restrictions</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability#getVehicleRelatedRestrictions()
+ * @see #getApplicability()
+ * @generated
+ */
+ EReference getApplicability_VehicleRelatedRestrictions();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction <em>Vehicle Related Restriction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Vehicle Related Restriction</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction
+ * @generated
+ */
+ EClass getVehicleRelatedRestriction();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionType <em>Restriction Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Restriction Type</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionType()
+ * @see #getVehicleRelatedRestriction()
+ * @generated
+ */
+ EAttribute getVehicleRelatedRestriction_RestrictionType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionValue <em>Restriction Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Restriction Value</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionValue()
+ * @see #getVehicleRelatedRestriction()
+ * @generated
+ */
+ EAttribute getVehicleRelatedRestriction_RestrictionValue();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionLocationReference <em>Restriction Location Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Restriction Location Reference</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction#getRestrictionLocationReference()
+ * @see #getVehicleRelatedRestriction()
+ * @generated
+ */
+ EReference getVehicleRelatedRestriction_RestrictionLocationReference();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection <em>Temporary Speed Limit Section</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Temporary Speed Limit Section</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection
+ * @generated
+ */
+ EClass getTemporarySpeedLimitSection();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValue <em>Speed Limit Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Speed Limit Value</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValue()
+ * @see #getTemporarySpeedLimitSection()
+ * @generated
+ */
+ EAttribute getTemporarySpeedLimitSection_SpeedLimitValue();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValueWet <em>Speed Limit Value Wet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Speed Limit Value Wet</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitValueWet()
+ * @see #getTemporarySpeedLimitSection()
+ * @generated
+ */
+ EAttribute getTemporarySpeedLimitSection_SpeedLimitValueWet();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitLength <em>Speed Limit Length</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Speed Limit Length</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection#getSpeedLimitLength()
+ * @see #getTemporarySpeedLimitSection()
+ * @generated
+ */
+ EAttribute getTemporarySpeedLimitSection_SpeedLimitLength();
+
+ /**
+ * Returns the meta object for class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit <em>Temporary Speed Limit</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Temporary Speed Limit</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit
+ * @generated
+ */
+ EClass getTemporarySpeedLimit();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getTemporarySpeedLimitSections <em>Temporary Speed Limit Sections</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Temporary Speed Limit Sections</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getTemporarySpeedLimitSections()
+ * @see #getTemporarySpeedLimit()
+ * @generated
+ */
+ EReference getTemporarySpeedLimit_TemporarySpeedLimitSections();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#isUnitsMPH <em>Units MPH</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Units MPH</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#isUnitsMPH()
+ * @see #getTemporarySpeedLimit()
+ * @generated
+ */
+ EAttribute getTemporarySpeedLimit_UnitsMPH();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getOffset <em>Offset</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Offset</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getOffset()
+ * @see #getTemporarySpeedLimit()
+ * @generated
+ */
+ EAttribute getTemporarySpeedLimit_Offset();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getApplicability <em>Applicability</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Applicability</em>'.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit#getApplicability()
+ * @see #getTemporarySpeedLimit()
+ * @generated
+ */
+ EReference getTemporarySpeedLimit_Applicability();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ XTrafficIncidentFactory getXTrafficIncidentFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl <em>Traffic Incident</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getTrafficIncident()
+ * @generated
+ */
+ EClass TRAFFIC_INCIDENT = eINSTANCE.getTrafficIncident();
+
+ /**
+ * The meta object literal for the '<em><b>Effect Code</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__EFFECT_CODE = eINSTANCE.getTrafficIncident_EffectCode();
+
+ /**
+ * The meta object literal for the '<em><b>Start Time</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__START_TIME = eINSTANCE.getTrafficIncident_StartTime();
+
+ /**
+ * The meta object literal for the '<em><b>Stop Time</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__STOP_TIME = eINSTANCE.getTrafficIncident_StopTime();
+
+ /**
+ * The meta object literal for the '<em><b>Tendency</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__TENDENCY = eINSTANCE.getTrafficIncident_Tendency();
+
+ /**
+ * The meta object literal for the '<em><b>Length Affected</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__LENGTH_AFFECTED = eINSTANCE.getTrafficIncident_LengthAffected();
+
+ /**
+ * The meta object literal for the '<em><b>Average Speed Absolute</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE = eINSTANCE.getTrafficIncident_AverageSpeedAbsolute();
+
+ /**
+ * The meta object literal for the '<em><b>Delay</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__DELAY = eINSTANCE.getTrafficIncident_Delay();
+
+ /**
+ * The meta object literal for the '<em><b>Segment Speed Limit</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT = eINSTANCE.getTrafficIncident_SegmentSpeedLimit();
+
+ /**
+ * The meta object literal for the '<em><b>Causes</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TRAFFIC_INCIDENT__CAUSES = eINSTANCE.getTrafficIncident_Causes();
+
+ /**
+ * The meta object literal for the '<em><b>Advices</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TRAFFIC_INCIDENT__ADVICES = eINSTANCE.getTrafficIncident_Advices();
+
+ /**
+ * The meta object literal for the '<em><b>Applicability</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TRAFFIC_INCIDENT__APPLICABILITY = eINSTANCE.getTrafficIncident_Applicability();
+
+ /**
+ * The meta object literal for the '<em><b>Traffic Incident Id</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID = eINSTANCE.getTrafficIncident_TrafficIncidentId();
+
+ /**
+ * The meta object literal for the '<em><b>Expected Speed Absolute</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE = eINSTANCE.getTrafficIncident_ExpectedSpeedAbsolute();
+
+ /**
+ * The meta object literal for the '<em><b>Expiration Time</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__EXPIRATION_TIME = eINSTANCE.getTrafficIncident_ExpirationTime();
+
+ /**
+ * The meta object literal for the '<em><b>Update Time</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TRAFFIC_INCIDENT__UPDATE_TIME = eINSTANCE.getTrafficIncident_UpdateTime();
+
+ /**
+ * The meta object literal for the '<em><b>Location Reference</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TRAFFIC_INCIDENT__LOCATION_REFERENCE = eINSTANCE.getTrafficIncident_LocationReference();
+
+ /**
+ * The meta object literal for the '<em><b>Temporary Speed Limit</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT = eINSTANCE.getTrafficIncident_TemporarySpeedLimit();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.CauseImpl <em>Cause</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.CauseImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getCause()
+ * @generated
+ */
+ EClass CAUSE = eINSTANCE.getCause();
+
+ /**
+ * The meta object literal for the '<em><b>Main Cause</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CAUSE__MAIN_CAUSE = eINSTANCE.getCause_MainCause();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LinkedCauseImpl <em>Linked Cause</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LinkedCauseImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getLinkedCause()
+ * @generated
+ */
+ EClass LINKED_CAUSE = eINSTANCE.getLinkedCause();
+
+ /**
+ * The meta object literal for the '<em><b>Cause Traffic Incident Id</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID = eINSTANCE.getLinkedCause_CauseTrafficIncidentId();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl <em>Direct Cause</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getDirectCause()
+ * @generated
+ */
+ EClass DIRECT_CAUSE = eINSTANCE.getDirectCause();
+
+ /**
+ * The meta object literal for the '<em><b>Warning Level</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DIRECT_CAUSE__WARNING_LEVEL = eINSTANCE.getDirectCause_WarningLevel();
+
+ /**
+ * The meta object literal for the '<em><b>Unverified Information</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DIRECT_CAUSE__UNVERIFIED_INFORMATION = eINSTANCE.getDirectCause_UnverifiedInformation();
+
+ /**
+ * The meta object literal for the '<em><b>Sub Cause</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DIRECT_CAUSE__SUB_CAUSE = eINSTANCE.getDirectCause_SubCause();
+
+ /**
+ * The meta object literal for the '<em><b>Length Affected</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DIRECT_CAUSE__LENGTH_AFFECTED = eINSTANCE.getDirectCause_LengthAffected();
+
+ /**
+ * The meta object literal for the '<em><b>Lane Restrictions</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECT_CAUSE__LANE_RESTRICTIONS = eINSTANCE.getDirectCause_LaneRestrictions();
+
+ /**
+ * The meta object literal for the '<em><b>Free Text</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECT_CAUSE__FREE_TEXT = eINSTANCE.getDirectCause_FreeText();
+
+ /**
+ * The meta object literal for the '<em><b>Cause Offset</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DIRECT_CAUSE__CAUSE_OFFSET = eINSTANCE.getDirectCause_CauseOffset();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LaneRestrictionsImpl <em>Lane Restrictions</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LaneRestrictionsImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getLaneRestrictions()
+ * @generated
+ */
+ EClass LANE_RESTRICTIONS = eINSTANCE.getLaneRestrictions();
+
+ /**
+ * The meta object literal for the '<em><b>Lane Restriction Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE = eINSTANCE.getLaneRestrictions_LaneRestrictionType();
+
+ /**
+ * The meta object literal for the '<em><b>Number Of Lanes</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LANE_RESTRICTIONS__NUMBER_OF_LANES = eINSTANCE.getLaneRestrictions_NumberOfLanes();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl <em>Advice</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getAdvice()
+ * @generated
+ */
+ EClass ADVICE = eINSTANCE.getAdvice();
+
+ /**
+ * The meta object literal for the '<em><b>Main Advice</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ADVICE__MAIN_ADVICE = eINSTANCE.getAdvice_MainAdvice();
+
+ /**
+ * The meta object literal for the '<em><b>Sub Advice</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ADVICE__SUB_ADVICE = eINSTANCE.getAdvice_SubAdvice();
+
+ /**
+ * The meta object literal for the '<em><b>Free Text</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ADVICE__FREE_TEXT = eINSTANCE.getAdvice_FreeText();
+
+ /**
+ * The meta object literal for the '<em><b>Applicability</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ADVICE__APPLICABILITY = eINSTANCE.getAdvice_Applicability();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.ApplicabilityImpl <em>Applicability</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.ApplicabilityImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getApplicability()
+ * @generated
+ */
+ EClass APPLICABILITY = eINSTANCE.getApplicability();
+
+ /**
+ * The meta object literal for the '<em><b>Vehicle Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute APPLICABILITY__VEHICLE_TYPE = eINSTANCE.getApplicability_VehicleType();
+
+ /**
+ * The meta object literal for the '<em><b>Vehicle Related Restrictions</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS = eINSTANCE.getApplicability_VehicleRelatedRestrictions();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.VehicleRelatedRestrictionImpl <em>Vehicle Related Restriction</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.VehicleRelatedRestrictionImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getVehicleRelatedRestriction()
+ * @generated
+ */
+ EClass VEHICLE_RELATED_RESTRICTION = eINSTANCE.getVehicleRelatedRestriction();
+
+ /**
+ * The meta object literal for the '<em><b>Restriction Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE = eINSTANCE.getVehicleRelatedRestriction_RestrictionType();
+
+ /**
+ * The meta object literal for the '<em><b>Restriction Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE = eINSTANCE.getVehicleRelatedRestriction_RestrictionValue();
+
+ /**
+ * The meta object literal for the '<em><b>Restriction Location Reference</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE = eINSTANCE.getVehicleRelatedRestriction_RestrictionLocationReference();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitSectionImpl <em>Temporary Speed Limit Section</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitSectionImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getTemporarySpeedLimitSection()
+ * @generated
+ */
+ EClass TEMPORARY_SPEED_LIMIT_SECTION = eINSTANCE.getTemporarySpeedLimitSection();
+
+ /**
+ * The meta object literal for the '<em><b>Speed Limit Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE = eINSTANCE.getTemporarySpeedLimitSection_SpeedLimitValue();
+
+ /**
+ * The meta object literal for the '<em><b>Speed Limit Value Wet</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET = eINSTANCE.getTemporarySpeedLimitSection_SpeedLimitValueWet();
+
+ /**
+ * The meta object literal for the '<em><b>Speed Limit Length</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH = eINSTANCE.getTemporarySpeedLimitSection_SpeedLimitLength();
+
+ /**
+ * The meta object literal for the '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl <em>Temporary Speed Limit</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.XTrafficIncidentPackageImpl#getTemporarySpeedLimit()
+ * @generated
+ */
+ EClass TEMPORARY_SPEED_LIMIT = eINSTANCE.getTemporarySpeedLimit();
+
+ /**
+ * The meta object literal for the '<em><b>Temporary Speed Limit Sections</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS = eINSTANCE.getTemporarySpeedLimit_TemporarySpeedLimitSections();
+
+ /**
+ * The meta object literal for the '<em><b>Units MPH</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TEMPORARY_SPEED_LIMIT__UNITS_MPH = eINSTANCE.getTemporarySpeedLimit_UnitsMPH();
+
+ /**
+ * The meta object literal for the '<em><b>Offset</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TEMPORARY_SPEED_LIMIT__OFFSET = eINSTANCE.getTemporarySpeedLimit_Offset();
+
+ /**
+ * The meta object literal for the '<em><b>Applicability</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TEMPORARY_SPEED_LIMIT__APPLICABILITY = eINSTANCE.getTemporarySpeedLimit_Applicability();
+
+ }
+
+} //XTrafficIncidentPackage
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/AdviceImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/AdviceImpl.java
new file mode 100755
index 0000000..fc188b3
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/AdviceImpl.java
@@ -0,0 +1,425 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.genivi.common.LocalizedString;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.AdviceCode;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Advice</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl#getMainAdvice <em>Main Advice</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl#getSubAdvice <em>Sub Advice</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl#getFreeText <em>Free Text</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.AdviceImpl#getApplicability <em>Applicability</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AdviceImpl extends EObjectImpl implements Advice {
+ /**
+ * The default value of the '{@link #getMainAdvice() <em>Main Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMainAdvice()
+ * @generated
+ * @ordered
+ */
+ protected static final AdviceCode MAIN_ADVICE_EDEFAULT = AdviceCode.DRIVE_TO_NEXT_AVAILABLE_PARKING_PLACE;
+
+ /**
+ * The cached value of the '{@link #getMainAdvice() <em>Main Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMainAdvice()
+ * @generated
+ * @ordered
+ */
+ protected AdviceCode mainAdvice = MAIN_ADVICE_EDEFAULT;
+
+ /**
+ * This is true if the Main Advice attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean mainAdviceESet;
+
+ /**
+ * The default value of the '{@link #getSubAdvice() <em>Sub Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubAdvice()
+ * @generated
+ * @ordered
+ */
+ protected static final Object SUB_ADVICE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubAdvice() <em>Sub Advice</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubAdvice()
+ * @generated
+ * @ordered
+ */
+ protected Object subAdvice = SUB_ADVICE_EDEFAULT;
+
+ /**
+ * This is true if the Sub Advice attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean subAdviceESet;
+
+ /**
+ * The cached value of the '{@link #getFreeText() <em>Free Text</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFreeText()
+ * @generated
+ * @ordered
+ */
+ protected EList<LocalizedString> freeText;
+
+ /**
+ * The cached value of the '{@link #getApplicability() <em>Applicability</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getApplicability()
+ * @generated
+ * @ordered
+ */
+ protected EList<Applicability> applicability;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AdviceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.ADVICE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AdviceCode getMainAdvice() {
+ return mainAdvice;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMainAdvice(AdviceCode newMainAdvice) {
+ AdviceCode oldMainAdvice = mainAdvice;
+ mainAdvice = newMainAdvice == null ? MAIN_ADVICE_EDEFAULT : newMainAdvice;
+ boolean oldMainAdviceESet = mainAdviceESet;
+ mainAdviceESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.ADVICE__MAIN_ADVICE, oldMainAdvice, mainAdvice, !oldMainAdviceESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetMainAdvice() {
+ AdviceCode oldMainAdvice = mainAdvice;
+ boolean oldMainAdviceESet = mainAdviceESet;
+ mainAdvice = MAIN_ADVICE_EDEFAULT;
+ mainAdviceESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.ADVICE__MAIN_ADVICE, oldMainAdvice, MAIN_ADVICE_EDEFAULT, oldMainAdviceESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetMainAdvice() {
+ return mainAdviceESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Object getSubAdvice() {
+ return subAdvice;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubAdvice(Object newSubAdvice) {
+ Object oldSubAdvice = subAdvice;
+ subAdvice = newSubAdvice;
+ boolean oldSubAdviceESet = subAdviceESet;
+ subAdviceESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.ADVICE__SUB_ADVICE, oldSubAdvice, subAdvice, !oldSubAdviceESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetSubAdvice() {
+ Object oldSubAdvice = subAdvice;
+ boolean oldSubAdviceESet = subAdviceESet;
+ subAdvice = SUB_ADVICE_EDEFAULT;
+ subAdviceESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.ADVICE__SUB_ADVICE, oldSubAdvice, SUB_ADVICE_EDEFAULT, oldSubAdviceESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetSubAdvice() {
+ return subAdviceESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<LocalizedString> getFreeText() {
+ if (freeText == null) {
+ freeText = new EObjectContainmentEList.Unsettable<LocalizedString>(LocalizedString.class, this, XTrafficIncidentPackage.ADVICE__FREE_TEXT);
+ }
+ return freeText;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetFreeText() {
+ if (freeText != null) ((InternalEList.Unsettable<?>)freeText).unset();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetFreeText() {
+ return freeText != null && ((InternalEList.Unsettable<?>)freeText).isSet();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Applicability> getApplicability() {
+ if (applicability == null) {
+ applicability = new EObjectContainmentEList.Unsettable<Applicability>(Applicability.class, this, XTrafficIncidentPackage.ADVICE__APPLICABILITY);
+ }
+ return applicability;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetApplicability() {
+ if (applicability != null) ((InternalEList.Unsettable<?>)applicability).unset();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetApplicability() {
+ return applicability != null && ((InternalEList.Unsettable<?>)applicability).isSet();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.ADVICE__FREE_TEXT:
+ return ((InternalEList<?>)getFreeText()).basicRemove(otherEnd, msgs);
+ case XTrafficIncidentPackage.ADVICE__APPLICABILITY:
+ return ((InternalEList<?>)getApplicability()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.ADVICE__MAIN_ADVICE:
+ return getMainAdvice();
+ case XTrafficIncidentPackage.ADVICE__SUB_ADVICE:
+ return getSubAdvice();
+ case XTrafficIncidentPackage.ADVICE__FREE_TEXT:
+ return getFreeText();
+ case XTrafficIncidentPackage.ADVICE__APPLICABILITY:
+ return getApplicability();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.ADVICE__MAIN_ADVICE:
+ setMainAdvice((AdviceCode)newValue);
+ return;
+ case XTrafficIncidentPackage.ADVICE__SUB_ADVICE:
+ setSubAdvice(newValue);
+ return;
+ case XTrafficIncidentPackage.ADVICE__FREE_TEXT:
+ getFreeText().clear();
+ getFreeText().addAll((Collection<? extends LocalizedString>)newValue);
+ return;
+ case XTrafficIncidentPackage.ADVICE__APPLICABILITY:
+ getApplicability().clear();
+ getApplicability().addAll((Collection<? extends Applicability>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.ADVICE__MAIN_ADVICE:
+ unsetMainAdvice();
+ return;
+ case XTrafficIncidentPackage.ADVICE__SUB_ADVICE:
+ unsetSubAdvice();
+ return;
+ case XTrafficIncidentPackage.ADVICE__FREE_TEXT:
+ unsetFreeText();
+ return;
+ case XTrafficIncidentPackage.ADVICE__APPLICABILITY:
+ unsetApplicability();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.ADVICE__MAIN_ADVICE:
+ return isSetMainAdvice();
+ case XTrafficIncidentPackage.ADVICE__SUB_ADVICE:
+ return isSetSubAdvice();
+ case XTrafficIncidentPackage.ADVICE__FREE_TEXT:
+ return isSetFreeText();
+ case XTrafficIncidentPackage.ADVICE__APPLICABILITY:
+ return isSetApplicability();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (mainAdvice: ");
+ if (mainAdviceESet) result.append(mainAdvice); else result.append("<unset>");
+ result.append(", subAdvice: ");
+ if (subAdviceESet) result.append(subAdvice); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //AdviceImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/ApplicabilityImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/ApplicabilityImpl.java
new file mode 100755
index 0000000..178b1ff
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/ApplicabilityImpl.java
@@ -0,0 +1,281 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.VehicleType;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Applicability</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.ApplicabilityImpl#getVehicleType <em>Vehicle Type</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.ApplicabilityImpl#getVehicleRelatedRestrictions <em>Vehicle Related Restrictions</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ApplicabilityImpl extends EObjectImpl implements Applicability {
+ /**
+ * The default value of the '{@link #getVehicleType() <em>Vehicle Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVehicleType()
+ * @generated
+ * @ordered
+ */
+ protected static final VehicleType VEHICLE_TYPE_EDEFAULT = VehicleType.CAR;
+
+ /**
+ * The cached value of the '{@link #getVehicleType() <em>Vehicle Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVehicleType()
+ * @generated
+ * @ordered
+ */
+ protected VehicleType vehicleType = VEHICLE_TYPE_EDEFAULT;
+
+ /**
+ * This is true if the Vehicle Type attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean vehicleTypeESet;
+
+ /**
+ * The cached value of the '{@link #getVehicleRelatedRestrictions() <em>Vehicle Related Restrictions</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getVehicleRelatedRestrictions()
+ * @generated
+ * @ordered
+ */
+ protected EList<VehicleRelatedRestriction> vehicleRelatedRestrictions;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ApplicabilityImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.APPLICABILITY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VehicleType getVehicleType() {
+ return vehicleType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setVehicleType(VehicleType newVehicleType) {
+ VehicleType oldVehicleType = vehicleType;
+ vehicleType = newVehicleType == null ? VEHICLE_TYPE_EDEFAULT : newVehicleType;
+ boolean oldVehicleTypeESet = vehicleTypeESet;
+ vehicleTypeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.APPLICABILITY__VEHICLE_TYPE, oldVehicleType, vehicleType, !oldVehicleTypeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetVehicleType() {
+ VehicleType oldVehicleType = vehicleType;
+ boolean oldVehicleTypeESet = vehicleTypeESet;
+ vehicleType = VEHICLE_TYPE_EDEFAULT;
+ vehicleTypeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.APPLICABILITY__VEHICLE_TYPE, oldVehicleType, VEHICLE_TYPE_EDEFAULT, oldVehicleTypeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetVehicleType() {
+ return vehicleTypeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VehicleRelatedRestriction> getVehicleRelatedRestrictions() {
+ if (vehicleRelatedRestrictions == null) {
+ vehicleRelatedRestrictions = new EObjectContainmentEList.Unsettable<VehicleRelatedRestriction>(VehicleRelatedRestriction.class, this, XTrafficIncidentPackage.APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS);
+ }
+ return vehicleRelatedRestrictions;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetVehicleRelatedRestrictions() {
+ if (vehicleRelatedRestrictions != null) ((InternalEList.Unsettable<?>)vehicleRelatedRestrictions).unset();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetVehicleRelatedRestrictions() {
+ return vehicleRelatedRestrictions != null && ((InternalEList.Unsettable<?>)vehicleRelatedRestrictions).isSet();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS:
+ return ((InternalEList<?>)getVehicleRelatedRestrictions()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_TYPE:
+ return getVehicleType();
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS:
+ return getVehicleRelatedRestrictions();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_TYPE:
+ setVehicleType((VehicleType)newValue);
+ return;
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS:
+ getVehicleRelatedRestrictions().clear();
+ getVehicleRelatedRestrictions().addAll((Collection<? extends VehicleRelatedRestriction>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_TYPE:
+ unsetVehicleType();
+ return;
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS:
+ unsetVehicleRelatedRestrictions();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_TYPE:
+ return isSetVehicleType();
+ case XTrafficIncidentPackage.APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS:
+ return isSetVehicleRelatedRestrictions();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (vehicleType: ");
+ if (vehicleTypeESet) result.append(vehicleType); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //ApplicabilityImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/CauseImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/CauseImpl.java
new file mode 100755
index 0000000..3eec292
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/CauseImpl.java
@@ -0,0 +1,204 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.CauseCode;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Cause</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.CauseImpl#getMainCause <em>Main Cause</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CauseImpl extends EObjectImpl implements Cause {
+ /**
+ * The default value of the '{@link #getMainCause() <em>Main Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMainCause()
+ * @generated
+ * @ordered
+ */
+ protected static final CauseCode MAIN_CAUSE_EDEFAULT = CauseCode.TRAFFIC_CONGESTION;
+
+ /**
+ * The cached value of the '{@link #getMainCause() <em>Main Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMainCause()
+ * @generated
+ * @ordered
+ */
+ protected CauseCode mainCause = MAIN_CAUSE_EDEFAULT;
+
+ /**
+ * This is true if the Main Cause attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean mainCauseESet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CauseImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.CAUSE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CauseCode getMainCause() {
+ return mainCause;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMainCause(CauseCode newMainCause) {
+ CauseCode oldMainCause = mainCause;
+ mainCause = newMainCause == null ? MAIN_CAUSE_EDEFAULT : newMainCause;
+ boolean oldMainCauseESet = mainCauseESet;
+ mainCauseESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.CAUSE__MAIN_CAUSE, oldMainCause, mainCause, !oldMainCauseESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetMainCause() {
+ CauseCode oldMainCause = mainCause;
+ boolean oldMainCauseESet = mainCauseESet;
+ mainCause = MAIN_CAUSE_EDEFAULT;
+ mainCauseESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.CAUSE__MAIN_CAUSE, oldMainCause, MAIN_CAUSE_EDEFAULT, oldMainCauseESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetMainCause() {
+ return mainCauseESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.CAUSE__MAIN_CAUSE:
+ return getMainCause();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.CAUSE__MAIN_CAUSE:
+ setMainCause((CauseCode)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.CAUSE__MAIN_CAUSE:
+ unsetMainCause();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.CAUSE__MAIN_CAUSE:
+ return isSetMainCause();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (mainCause: ");
+ if (mainCauseESet) result.append(mainCause); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //CauseImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/DirectCauseImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/DirectCauseImpl.java
new file mode 100755
index 0000000..b74af4f
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/DirectCauseImpl.java
@@ -0,0 +1,761 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.genivi.common.LocalizedString;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.WarningLevel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Direct Cause</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl#getWarningLevel <em>Warning Level</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl#isUnverifiedInformation <em>Unverified Information</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl#getSubCause <em>Sub Cause</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl#getLengthAffected <em>Length Affected</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl#getLaneRestrictions <em>Lane Restrictions</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl#getFreeText <em>Free Text</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.DirectCauseImpl#getCauseOffset <em>Cause Offset</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DirectCauseImpl extends CauseImpl implements DirectCause {
+ /**
+ * The default value of the '{@link #getWarningLevel() <em>Warning Level</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWarningLevel()
+ * @generated
+ * @ordered
+ */
+ protected static final WarningLevel WARNING_LEVEL_EDEFAULT = WarningLevel.INFORMATIVE;
+
+ /**
+ * The cached value of the '{@link #getWarningLevel() <em>Warning Level</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWarningLevel()
+ * @generated
+ * @ordered
+ */
+ protected WarningLevel warningLevel = WARNING_LEVEL_EDEFAULT;
+
+ /**
+ * This is true if the Warning Level attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean warningLevelESet;
+
+ /**
+ * The default value of the '{@link #isUnverifiedInformation() <em>Unverified Information</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isUnverifiedInformation()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean UNVERIFIED_INFORMATION_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isUnverifiedInformation() <em>Unverified Information</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isUnverifiedInformation()
+ * @generated
+ * @ordered
+ */
+ protected boolean unverifiedInformation = UNVERIFIED_INFORMATION_EDEFAULT;
+
+ /**
+ * This is true if the Unverified Information attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean unverifiedInformationESet;
+
+ /**
+ * The default value of the '{@link #getSubCause() <em>Sub Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubCause()
+ * @generated
+ * @ordered
+ */
+ protected static final Object SUB_CAUSE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubCause() <em>Sub Cause</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubCause()
+ * @generated
+ * @ordered
+ */
+ protected Object subCause = SUB_CAUSE_EDEFAULT;
+
+ /**
+ * This is true if the Sub Cause attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean subCauseESet;
+
+ /**
+ * The default value of the '{@link #getLengthAffected() <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLengthAffected()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer LENGTH_AFFECTED_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLengthAffected() <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLengthAffected()
+ * @generated
+ * @ordered
+ */
+ protected Integer lengthAffected = LENGTH_AFFECTED_EDEFAULT;
+
+ /**
+ * This is true if the Length Affected attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean lengthAffectedESet;
+
+ /**
+ * The cached value of the '{@link #getLaneRestrictions() <em>Lane Restrictions</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLaneRestrictions()
+ * @generated
+ * @ordered
+ */
+ protected LaneRestrictions laneRestrictions;
+
+ /**
+ * This is true if the Lane Restrictions containment reference has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean laneRestrictionsESet;
+
+ /**
+ * The cached value of the '{@link #getFreeText() <em>Free Text</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFreeText()
+ * @generated
+ * @ordered
+ */
+ protected EList<LocalizedString> freeText;
+
+ /**
+ * The default value of the '{@link #getCauseOffset() <em>Cause Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCauseOffset()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer CAUSE_OFFSET_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCauseOffset() <em>Cause Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCauseOffset()
+ * @generated
+ * @ordered
+ */
+ protected Integer causeOffset = CAUSE_OFFSET_EDEFAULT;
+
+ /**
+ * This is true if the Cause Offset attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean causeOffsetESet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DirectCauseImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.DIRECT_CAUSE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public WarningLevel getWarningLevel() {
+ return warningLevel;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setWarningLevel(WarningLevel newWarningLevel) {
+ WarningLevel oldWarningLevel = warningLevel;
+ warningLevel = newWarningLevel == null ? WARNING_LEVEL_EDEFAULT : newWarningLevel;
+ boolean oldWarningLevelESet = warningLevelESet;
+ warningLevelESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.DIRECT_CAUSE__WARNING_LEVEL, oldWarningLevel, warningLevel, !oldWarningLevelESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetWarningLevel() {
+ WarningLevel oldWarningLevel = warningLevel;
+ boolean oldWarningLevelESet = warningLevelESet;
+ warningLevel = WARNING_LEVEL_EDEFAULT;
+ warningLevelESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.DIRECT_CAUSE__WARNING_LEVEL, oldWarningLevel, WARNING_LEVEL_EDEFAULT, oldWarningLevelESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetWarningLevel() {
+ return warningLevelESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isUnverifiedInformation() {
+ return unverifiedInformation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUnverifiedInformation(boolean newUnverifiedInformation) {
+ boolean oldUnverifiedInformation = unverifiedInformation;
+ unverifiedInformation = newUnverifiedInformation;
+ boolean oldUnverifiedInformationESet = unverifiedInformationESet;
+ unverifiedInformationESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.DIRECT_CAUSE__UNVERIFIED_INFORMATION, oldUnverifiedInformation, unverifiedInformation, !oldUnverifiedInformationESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetUnverifiedInformation() {
+ boolean oldUnverifiedInformation = unverifiedInformation;
+ boolean oldUnverifiedInformationESet = unverifiedInformationESet;
+ unverifiedInformation = UNVERIFIED_INFORMATION_EDEFAULT;
+ unverifiedInformationESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.DIRECT_CAUSE__UNVERIFIED_INFORMATION, oldUnverifiedInformation, UNVERIFIED_INFORMATION_EDEFAULT, oldUnverifiedInformationESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetUnverifiedInformation() {
+ return unverifiedInformationESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Object getSubCause() {
+ return subCause;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubCause(Object newSubCause) {
+ Object oldSubCause = subCause;
+ subCause = newSubCause;
+ boolean oldSubCauseESet = subCauseESet;
+ subCauseESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.DIRECT_CAUSE__SUB_CAUSE, oldSubCause, subCause, !oldSubCauseESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetSubCause() {
+ Object oldSubCause = subCause;
+ boolean oldSubCauseESet = subCauseESet;
+ subCause = SUB_CAUSE_EDEFAULT;
+ subCauseESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.DIRECT_CAUSE__SUB_CAUSE, oldSubCause, SUB_CAUSE_EDEFAULT, oldSubCauseESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetSubCause() {
+ return subCauseESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getLengthAffected() {
+ return lengthAffected;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLengthAffected(Integer newLengthAffected) {
+ Integer oldLengthAffected = lengthAffected;
+ lengthAffected = newLengthAffected;
+ boolean oldLengthAffectedESet = lengthAffectedESet;
+ lengthAffectedESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.DIRECT_CAUSE__LENGTH_AFFECTED, oldLengthAffected, lengthAffected, !oldLengthAffectedESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetLengthAffected() {
+ Integer oldLengthAffected = lengthAffected;
+ boolean oldLengthAffectedESet = lengthAffectedESet;
+ lengthAffected = LENGTH_AFFECTED_EDEFAULT;
+ lengthAffectedESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.DIRECT_CAUSE__LENGTH_AFFECTED, oldLengthAffected, LENGTH_AFFECTED_EDEFAULT, oldLengthAffectedESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetLengthAffected() {
+ return lengthAffectedESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LaneRestrictions getLaneRestrictions() {
+ return laneRestrictions;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetLaneRestrictions(LaneRestrictions newLaneRestrictions, NotificationChain msgs) {
+ LaneRestrictions oldLaneRestrictions = laneRestrictions;
+ laneRestrictions = newLaneRestrictions;
+ boolean oldLaneRestrictionsESet = laneRestrictionsESet;
+ laneRestrictionsESet = true;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS, oldLaneRestrictions, newLaneRestrictions, !oldLaneRestrictionsESet);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLaneRestrictions(LaneRestrictions newLaneRestrictions) {
+ if (newLaneRestrictions != laneRestrictions) {
+ NotificationChain msgs = null;
+ if (laneRestrictions != null)
+ msgs = ((InternalEObject)laneRestrictions).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS, null, msgs);
+ if (newLaneRestrictions != null)
+ msgs = ((InternalEObject)newLaneRestrictions).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS, null, msgs);
+ msgs = basicSetLaneRestrictions(newLaneRestrictions, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else {
+ boolean oldLaneRestrictionsESet = laneRestrictionsESet;
+ laneRestrictionsESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS, newLaneRestrictions, newLaneRestrictions, !oldLaneRestrictionsESet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicUnsetLaneRestrictions(NotificationChain msgs) {
+ LaneRestrictions oldLaneRestrictions = laneRestrictions;
+ laneRestrictions = null;
+ boolean oldLaneRestrictionsESet = laneRestrictionsESet;
+ laneRestrictionsESet = false;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS, oldLaneRestrictions, null, oldLaneRestrictionsESet);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetLaneRestrictions() {
+ if (laneRestrictions != null) {
+ NotificationChain msgs = null;
+ msgs = ((InternalEObject)laneRestrictions).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS, null, msgs);
+ msgs = basicUnsetLaneRestrictions(msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else {
+ boolean oldLaneRestrictionsESet = laneRestrictionsESet;
+ laneRestrictionsESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS, null, null, oldLaneRestrictionsESet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetLaneRestrictions() {
+ return laneRestrictionsESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<LocalizedString> getFreeText() {
+ if (freeText == null) {
+ freeText = new EObjectContainmentEList.Unsettable<LocalizedString>(LocalizedString.class, this, XTrafficIncidentPackage.DIRECT_CAUSE__FREE_TEXT);
+ }
+ return freeText;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetFreeText() {
+ if (freeText != null) ((InternalEList.Unsettable<?>)freeText).unset();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetFreeText() {
+ return freeText != null && ((InternalEList.Unsettable<?>)freeText).isSet();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getCauseOffset() {
+ return causeOffset;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCauseOffset(Integer newCauseOffset) {
+ Integer oldCauseOffset = causeOffset;
+ causeOffset = newCauseOffset;
+ boolean oldCauseOffsetESet = causeOffsetESet;
+ causeOffsetESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.DIRECT_CAUSE__CAUSE_OFFSET, oldCauseOffset, causeOffset, !oldCauseOffsetESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetCauseOffset() {
+ Integer oldCauseOffset = causeOffset;
+ boolean oldCauseOffsetESet = causeOffsetESet;
+ causeOffset = CAUSE_OFFSET_EDEFAULT;
+ causeOffsetESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.DIRECT_CAUSE__CAUSE_OFFSET, oldCauseOffset, CAUSE_OFFSET_EDEFAULT, oldCauseOffsetESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetCauseOffset() {
+ return causeOffsetESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS:
+ return basicUnsetLaneRestrictions(msgs);
+ case XTrafficIncidentPackage.DIRECT_CAUSE__FREE_TEXT:
+ return ((InternalEList<?>)getFreeText()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.DIRECT_CAUSE__WARNING_LEVEL:
+ return getWarningLevel();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__UNVERIFIED_INFORMATION:
+ return isUnverifiedInformation();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__SUB_CAUSE:
+ return getSubCause();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LENGTH_AFFECTED:
+ return getLengthAffected();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS:
+ return getLaneRestrictions();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__FREE_TEXT:
+ return getFreeText();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__CAUSE_OFFSET:
+ return getCauseOffset();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.DIRECT_CAUSE__WARNING_LEVEL:
+ setWarningLevel((WarningLevel)newValue);
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__UNVERIFIED_INFORMATION:
+ setUnverifiedInformation((Boolean)newValue);
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__SUB_CAUSE:
+ setSubCause(newValue);
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LENGTH_AFFECTED:
+ setLengthAffected((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS:
+ setLaneRestrictions((LaneRestrictions)newValue);
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__FREE_TEXT:
+ getFreeText().clear();
+ getFreeText().addAll((Collection<? extends LocalizedString>)newValue);
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__CAUSE_OFFSET:
+ setCauseOffset((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.DIRECT_CAUSE__WARNING_LEVEL:
+ unsetWarningLevel();
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__UNVERIFIED_INFORMATION:
+ unsetUnverifiedInformation();
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__SUB_CAUSE:
+ unsetSubCause();
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LENGTH_AFFECTED:
+ unsetLengthAffected();
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS:
+ unsetLaneRestrictions();
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__FREE_TEXT:
+ unsetFreeText();
+ return;
+ case XTrafficIncidentPackage.DIRECT_CAUSE__CAUSE_OFFSET:
+ unsetCauseOffset();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.DIRECT_CAUSE__WARNING_LEVEL:
+ return isSetWarningLevel();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__UNVERIFIED_INFORMATION:
+ return isSetUnverifiedInformation();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__SUB_CAUSE:
+ return isSetSubCause();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LENGTH_AFFECTED:
+ return isSetLengthAffected();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__LANE_RESTRICTIONS:
+ return isSetLaneRestrictions();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__FREE_TEXT:
+ return isSetFreeText();
+ case XTrafficIncidentPackage.DIRECT_CAUSE__CAUSE_OFFSET:
+ return isSetCauseOffset();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (warningLevel: ");
+ if (warningLevelESet) result.append(warningLevel); else result.append("<unset>");
+ result.append(", unverifiedInformation: ");
+ if (unverifiedInformationESet) result.append(unverifiedInformation); else result.append("<unset>");
+ result.append(", subCause: ");
+ if (subCauseESet) result.append(subCause); else result.append("<unset>");
+ result.append(", lengthAffected: ");
+ if (lengthAffectedESet) result.append(lengthAffected); else result.append("<unset>");
+ result.append(", causeOffset: ");
+ if (causeOffsetESet) result.append(causeOffset); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //DirectCauseImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LaneRestrictionsImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LaneRestrictionsImpl.java
new file mode 100755
index 0000000..67178a7
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LaneRestrictionsImpl.java
@@ -0,0 +1,292 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.LaneRestrictionType;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Lane Restrictions</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LaneRestrictionsImpl#getLaneRestrictionType <em>Lane Restriction Type</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LaneRestrictionsImpl#getNumberOfLanes <em>Number Of Lanes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class LaneRestrictionsImpl extends EObjectImpl implements LaneRestrictions {
+ /**
+ * The default value of the '{@link #getLaneRestrictionType() <em>Lane Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLaneRestrictionType()
+ * @generated
+ * @ordered
+ */
+ protected static final LaneRestrictionType LANE_RESTRICTION_TYPE_EDEFAULT = LaneRestrictionType.LANES_CLOSED;
+
+ /**
+ * The cached value of the '{@link #getLaneRestrictionType() <em>Lane Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLaneRestrictionType()
+ * @generated
+ * @ordered
+ */
+ protected LaneRestrictionType laneRestrictionType = LANE_RESTRICTION_TYPE_EDEFAULT;
+
+ /**
+ * This is true if the Lane Restriction Type attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean laneRestrictionTypeESet;
+
+ /**
+ * The default value of the '{@link #getNumberOfLanes() <em>Number Of Lanes</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNumberOfLanes()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer NUMBER_OF_LANES_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNumberOfLanes() <em>Number Of Lanes</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNumberOfLanes()
+ * @generated
+ * @ordered
+ */
+ protected Integer numberOfLanes = NUMBER_OF_LANES_EDEFAULT;
+
+ /**
+ * This is true if the Number Of Lanes attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean numberOfLanesESet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected LaneRestrictionsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.LANE_RESTRICTIONS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LaneRestrictionType getLaneRestrictionType() {
+ return laneRestrictionType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLaneRestrictionType(LaneRestrictionType newLaneRestrictionType) {
+ LaneRestrictionType oldLaneRestrictionType = laneRestrictionType;
+ laneRestrictionType = newLaneRestrictionType == null ? LANE_RESTRICTION_TYPE_EDEFAULT : newLaneRestrictionType;
+ boolean oldLaneRestrictionTypeESet = laneRestrictionTypeESet;
+ laneRestrictionTypeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE, oldLaneRestrictionType, laneRestrictionType, !oldLaneRestrictionTypeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetLaneRestrictionType() {
+ LaneRestrictionType oldLaneRestrictionType = laneRestrictionType;
+ boolean oldLaneRestrictionTypeESet = laneRestrictionTypeESet;
+ laneRestrictionType = LANE_RESTRICTION_TYPE_EDEFAULT;
+ laneRestrictionTypeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE, oldLaneRestrictionType, LANE_RESTRICTION_TYPE_EDEFAULT, oldLaneRestrictionTypeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetLaneRestrictionType() {
+ return laneRestrictionTypeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getNumberOfLanes() {
+ return numberOfLanes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNumberOfLanes(Integer newNumberOfLanes) {
+ Integer oldNumberOfLanes = numberOfLanes;
+ numberOfLanes = newNumberOfLanes;
+ boolean oldNumberOfLanesESet = numberOfLanesESet;
+ numberOfLanesESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.LANE_RESTRICTIONS__NUMBER_OF_LANES, oldNumberOfLanes, numberOfLanes, !oldNumberOfLanesESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetNumberOfLanes() {
+ Integer oldNumberOfLanes = numberOfLanes;
+ boolean oldNumberOfLanesESet = numberOfLanesESet;
+ numberOfLanes = NUMBER_OF_LANES_EDEFAULT;
+ numberOfLanesESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.LANE_RESTRICTIONS__NUMBER_OF_LANES, oldNumberOfLanes, NUMBER_OF_LANES_EDEFAULT, oldNumberOfLanesESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetNumberOfLanes() {
+ return numberOfLanesESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE:
+ return getLaneRestrictionType();
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__NUMBER_OF_LANES:
+ return getNumberOfLanes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE:
+ setLaneRestrictionType((LaneRestrictionType)newValue);
+ return;
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__NUMBER_OF_LANES:
+ setNumberOfLanes((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE:
+ unsetLaneRestrictionType();
+ return;
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__NUMBER_OF_LANES:
+ unsetNumberOfLanes();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE:
+ return isSetLaneRestrictionType();
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS__NUMBER_OF_LANES:
+ return isSetNumberOfLanes();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (laneRestrictionType: ");
+ if (laneRestrictionTypeESet) result.append(laneRestrictionType); else result.append("<unset>");
+ result.append(", numberOfLanes: ");
+ if (numberOfLanesESet) result.append(numberOfLanes); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //LaneRestrictionsImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LinkedCauseImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LinkedCauseImpl.java
new file mode 100755
index 0000000..27c0c13
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/LinkedCauseImpl.java
@@ -0,0 +1,201 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Linked Cause</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.LinkedCauseImpl#getCauseTrafficIncidentId <em>Cause Traffic Incident Id</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class LinkedCauseImpl extends CauseImpl implements LinkedCause {
+ /**
+ * The default value of the '{@link #getCauseTrafficIncidentId() <em>Cause Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCauseTrafficIncidentId()
+ * @generated
+ * @ordered
+ */
+ protected static final String CAUSE_TRAFFIC_INCIDENT_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCauseTrafficIncidentId() <em>Cause Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCauseTrafficIncidentId()
+ * @generated
+ * @ordered
+ */
+ protected String causeTrafficIncidentId = CAUSE_TRAFFIC_INCIDENT_ID_EDEFAULT;
+
+ /**
+ * This is true if the Cause Traffic Incident Id attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean causeTrafficIncidentIdESet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected LinkedCauseImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.LINKED_CAUSE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getCauseTrafficIncidentId() {
+ return causeTrafficIncidentId;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCauseTrafficIncidentId(String newCauseTrafficIncidentId) {
+ String oldCauseTrafficIncidentId = causeTrafficIncidentId;
+ causeTrafficIncidentId = newCauseTrafficIncidentId;
+ boolean oldCauseTrafficIncidentIdESet = causeTrafficIncidentIdESet;
+ causeTrafficIncidentIdESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID, oldCauseTrafficIncidentId, causeTrafficIncidentId, !oldCauseTrafficIncidentIdESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetCauseTrafficIncidentId() {
+ String oldCauseTrafficIncidentId = causeTrafficIncidentId;
+ boolean oldCauseTrafficIncidentIdESet = causeTrafficIncidentIdESet;
+ causeTrafficIncidentId = CAUSE_TRAFFIC_INCIDENT_ID_EDEFAULT;
+ causeTrafficIncidentIdESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID, oldCauseTrafficIncidentId, CAUSE_TRAFFIC_INCIDENT_ID_EDEFAULT, oldCauseTrafficIncidentIdESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetCauseTrafficIncidentId() {
+ return causeTrafficIncidentIdESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID:
+ return getCauseTrafficIncidentId();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID:
+ setCauseTrafficIncidentId((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID:
+ unsetCauseTrafficIncidentId();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID:
+ return isSetCauseTrafficIncidentId();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (causeTrafficIncidentId: ");
+ if (causeTrafficIncidentIdESet) result.append(causeTrafficIncidentId); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //LinkedCauseImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitImpl.java
new file mode 100755
index 0000000..730d2eb
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitImpl.java
@@ -0,0 +1,352 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Temporary Speed Limit</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl#getTemporarySpeedLimitSections <em>Temporary Speed Limit Sections</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl#isUnitsMPH <em>Units MPH</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl#getOffset <em>Offset</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitImpl#getApplicability <em>Applicability</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TemporarySpeedLimitImpl extends EObjectImpl implements TemporarySpeedLimit {
+ /**
+ * The cached value of the '{@link #getTemporarySpeedLimitSections() <em>Temporary Speed Limit Sections</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTemporarySpeedLimitSections()
+ * @generated
+ * @ordered
+ */
+ protected EList<TemporarySpeedLimitSection> temporarySpeedLimitSections;
+
+ /**
+ * The default value of the '{@link #isUnitsMPH() <em>Units MPH</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isUnitsMPH()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean UNITS_MPH_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isUnitsMPH() <em>Units MPH</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isUnitsMPH()
+ * @generated
+ * @ordered
+ */
+ protected boolean unitsMPH = UNITS_MPH_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getOffset() <em>Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOffset()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer OFFSET_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getOffset() <em>Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOffset()
+ * @generated
+ * @ordered
+ */
+ protected Integer offset = OFFSET_EDEFAULT;
+
+ /**
+ * This is true if the Offset attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean offsetESet;
+
+ /**
+ * The cached value of the '{@link #getApplicability() <em>Applicability</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getApplicability()
+ * @generated
+ * @ordered
+ */
+ protected EList<Applicability> applicability;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TemporarySpeedLimitImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.TEMPORARY_SPEED_LIMIT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<TemporarySpeedLimitSection> getTemporarySpeedLimitSections() {
+ if (temporarySpeedLimitSections == null) {
+ temporarySpeedLimitSections = new EObjectContainmentEList<TemporarySpeedLimitSection>(TemporarySpeedLimitSection.class, this, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS);
+ }
+ return temporarySpeedLimitSections;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isUnitsMPH() {
+ return unitsMPH;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUnitsMPH(boolean newUnitsMPH) {
+ boolean oldUnitsMPH = unitsMPH;
+ unitsMPH = newUnitsMPH;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__UNITS_MPH, oldUnitsMPH, unitsMPH));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getOffset() {
+ return offset;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOffset(Integer newOffset) {
+ Integer oldOffset = offset;
+ offset = newOffset;
+ boolean oldOffsetESet = offsetESet;
+ offsetESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__OFFSET, oldOffset, offset, !oldOffsetESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetOffset() {
+ Integer oldOffset = offset;
+ boolean oldOffsetESet = offsetESet;
+ offset = OFFSET_EDEFAULT;
+ offsetESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__OFFSET, oldOffset, OFFSET_EDEFAULT, oldOffsetESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetOffset() {
+ return offsetESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Applicability> getApplicability() {
+ if (applicability == null) {
+ applicability = new EObjectContainmentEList<Applicability>(Applicability.class, this, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__APPLICABILITY);
+ }
+ return applicability;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS:
+ return ((InternalEList<?>)getTemporarySpeedLimitSections()).basicRemove(otherEnd, msgs);
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__APPLICABILITY:
+ return ((InternalEList<?>)getApplicability()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS:
+ return getTemporarySpeedLimitSections();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__UNITS_MPH:
+ return isUnitsMPH();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__OFFSET:
+ return getOffset();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__APPLICABILITY:
+ return getApplicability();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS:
+ getTemporarySpeedLimitSections().clear();
+ getTemporarySpeedLimitSections().addAll((Collection<? extends TemporarySpeedLimitSection>)newValue);
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__UNITS_MPH:
+ setUnitsMPH((Boolean)newValue);
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__OFFSET:
+ setOffset((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__APPLICABILITY:
+ getApplicability().clear();
+ getApplicability().addAll((Collection<? extends Applicability>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS:
+ getTemporarySpeedLimitSections().clear();
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__UNITS_MPH:
+ setUnitsMPH(UNITS_MPH_EDEFAULT);
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__OFFSET:
+ unsetOffset();
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__APPLICABILITY:
+ getApplicability().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS:
+ return temporarySpeedLimitSections != null && !temporarySpeedLimitSections.isEmpty();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__UNITS_MPH:
+ return unitsMPH != UNITS_MPH_EDEFAULT;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__OFFSET:
+ return isSetOffset();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT__APPLICABILITY:
+ return applicability != null && !applicability.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (unitsMPH: ");
+ result.append(unitsMPH);
+ result.append(", offset: ");
+ if (offsetESet) result.append(offset); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //TemporarySpeedLimitImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitSectionImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitSectionImpl.java
new file mode 100755
index 0000000..f47ba74
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TemporarySpeedLimitSectionImpl.java
@@ -0,0 +1,378 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Temporary Speed Limit Section</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitSectionImpl#getSpeedLimitValue <em>Speed Limit Value</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitSectionImpl#getSpeedLimitValueWet <em>Speed Limit Value Wet</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TemporarySpeedLimitSectionImpl#getSpeedLimitLength <em>Speed Limit Length</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TemporarySpeedLimitSectionImpl extends EObjectImpl implements TemporarySpeedLimitSection {
+ /**
+ * The default value of the '{@link #getSpeedLimitValue() <em>Speed Limit Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSpeedLimitValue()
+ * @generated
+ * @ordered
+ */
+ protected static final short SPEED_LIMIT_VALUE_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getSpeedLimitValue() <em>Speed Limit Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSpeedLimitValue()
+ * @generated
+ * @ordered
+ */
+ protected short speedLimitValue = SPEED_LIMIT_VALUE_EDEFAULT;
+
+ /**
+ * This is true if the Speed Limit Value attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean speedLimitValueESet;
+
+ /**
+ * The default value of the '{@link #getSpeedLimitValueWet() <em>Speed Limit Value Wet</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSpeedLimitValueWet()
+ * @generated
+ * @ordered
+ */
+ protected static final short SPEED_LIMIT_VALUE_WET_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getSpeedLimitValueWet() <em>Speed Limit Value Wet</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSpeedLimitValueWet()
+ * @generated
+ * @ordered
+ */
+ protected short speedLimitValueWet = SPEED_LIMIT_VALUE_WET_EDEFAULT;
+
+ /**
+ * This is true if the Speed Limit Value Wet attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean speedLimitValueWetESet;
+
+ /**
+ * The default value of the '{@link #getSpeedLimitLength() <em>Speed Limit Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSpeedLimitLength()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer SPEED_LIMIT_LENGTH_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSpeedLimitLength() <em>Speed Limit Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSpeedLimitLength()
+ * @generated
+ * @ordered
+ */
+ protected Integer speedLimitLength = SPEED_LIMIT_LENGTH_EDEFAULT;
+
+ /**
+ * This is true if the Speed Limit Length attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean speedLimitLengthESet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TemporarySpeedLimitSectionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.TEMPORARY_SPEED_LIMIT_SECTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public short getSpeedLimitValue() {
+ return speedLimitValue;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSpeedLimitValue(short newSpeedLimitValue) {
+ short oldSpeedLimitValue = speedLimitValue;
+ speedLimitValue = newSpeedLimitValue;
+ boolean oldSpeedLimitValueESet = speedLimitValueESet;
+ speedLimitValueESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE, oldSpeedLimitValue, speedLimitValue, !oldSpeedLimitValueESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetSpeedLimitValue() {
+ short oldSpeedLimitValue = speedLimitValue;
+ boolean oldSpeedLimitValueESet = speedLimitValueESet;
+ speedLimitValue = SPEED_LIMIT_VALUE_EDEFAULT;
+ speedLimitValueESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE, oldSpeedLimitValue, SPEED_LIMIT_VALUE_EDEFAULT, oldSpeedLimitValueESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetSpeedLimitValue() {
+ return speedLimitValueESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public short getSpeedLimitValueWet() {
+ return speedLimitValueWet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSpeedLimitValueWet(short newSpeedLimitValueWet) {
+ short oldSpeedLimitValueWet = speedLimitValueWet;
+ speedLimitValueWet = newSpeedLimitValueWet;
+ boolean oldSpeedLimitValueWetESet = speedLimitValueWetESet;
+ speedLimitValueWetESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET, oldSpeedLimitValueWet, speedLimitValueWet, !oldSpeedLimitValueWetESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetSpeedLimitValueWet() {
+ short oldSpeedLimitValueWet = speedLimitValueWet;
+ boolean oldSpeedLimitValueWetESet = speedLimitValueWetESet;
+ speedLimitValueWet = SPEED_LIMIT_VALUE_WET_EDEFAULT;
+ speedLimitValueWetESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET, oldSpeedLimitValueWet, SPEED_LIMIT_VALUE_WET_EDEFAULT, oldSpeedLimitValueWetESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetSpeedLimitValueWet() {
+ return speedLimitValueWetESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getSpeedLimitLength() {
+ return speedLimitLength;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSpeedLimitLength(Integer newSpeedLimitLength) {
+ Integer oldSpeedLimitLength = speedLimitLength;
+ speedLimitLength = newSpeedLimitLength;
+ boolean oldSpeedLimitLengthESet = speedLimitLengthESet;
+ speedLimitLengthESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH, oldSpeedLimitLength, speedLimitLength, !oldSpeedLimitLengthESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetSpeedLimitLength() {
+ Integer oldSpeedLimitLength = speedLimitLength;
+ boolean oldSpeedLimitLengthESet = speedLimitLengthESet;
+ speedLimitLength = SPEED_LIMIT_LENGTH_EDEFAULT;
+ speedLimitLengthESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH, oldSpeedLimitLength, SPEED_LIMIT_LENGTH_EDEFAULT, oldSpeedLimitLengthESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetSpeedLimitLength() {
+ return speedLimitLengthESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE:
+ return getSpeedLimitValue();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET:
+ return getSpeedLimitValueWet();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH:
+ return getSpeedLimitLength();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE:
+ setSpeedLimitValue((Short)newValue);
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET:
+ setSpeedLimitValueWet((Short)newValue);
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH:
+ setSpeedLimitLength((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE:
+ unsetSpeedLimitValue();
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET:
+ unsetSpeedLimitValueWet();
+ return;
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH:
+ unsetSpeedLimitLength();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE:
+ return isSetSpeedLimitValue();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET:
+ return isSetSpeedLimitValueWet();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH:
+ return isSetSpeedLimitLength();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (speedLimitValue: ");
+ if (speedLimitValueESet) result.append(speedLimitValue); else result.append("<unset>");
+ result.append(", speedLimitValueWet: ");
+ if (speedLimitValueWetESet) result.append(speedLimitValueWet); else result.append("<unset>");
+ result.append(", speedLimitLength: ");
+ if (speedLimitLengthESet) result.append(speedLimitLength); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //TemporarySpeedLimitSectionImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TrafficIncidentImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TrafficIncidentImpl.java
new file mode 100755
index 0000000..70acf9e
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/TrafficIncidentImpl.java
@@ -0,0 +1,1527 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import java.util.Collection;
+import java.util.Date;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.genivi.locref.LocationReference;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.EffectCode;
+import org.genivi.trafficincidentsservice.trafficincidenttables.Tendency;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Traffic Incident</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getEffectCode <em>Effect Code</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getStartTime <em>Start Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getStopTime <em>Stop Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getTendency <em>Tendency</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getLengthAffected <em>Length Affected</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getAverageSpeedAbsolute <em>Average Speed Absolute</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getDelay <em>Delay</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getSegmentSpeedLimit <em>Segment Speed Limit</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getCauses <em>Causes</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getAdvices <em>Advices</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getApplicability <em>Applicability</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getTrafficIncidentId <em>Traffic Incident Id</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getExpectedSpeedAbsolute <em>Expected Speed Absolute</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getExpirationTime <em>Expiration Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getUpdateTime <em>Update Time</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getLocationReference <em>Location Reference</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.TrafficIncidentImpl#getTemporarySpeedLimit <em>Temporary Speed Limit</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TrafficIncidentImpl extends EObjectImpl implements TrafficIncident {
+ /**
+ * The default value of the '{@link #getEffectCode() <em>Effect Code</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEffectCode()
+ * @generated
+ * @ordered
+ */
+ protected static final EffectCode EFFECT_CODE_EDEFAULT = EffectCode.TRAFFIC_FLOW_UNKNOWN;
+
+ /**
+ * The cached value of the '{@link #getEffectCode() <em>Effect Code</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEffectCode()
+ * @generated
+ * @ordered
+ */
+ protected EffectCode effectCode = EFFECT_CODE_EDEFAULT;
+
+ /**
+ * This is true if the Effect Code attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean effectCodeESet;
+
+ /**
+ * The default value of the '{@link #getStartTime() <em>Start Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStartTime()
+ * @generated
+ * @ordered
+ */
+ protected static final Date START_TIME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getStartTime() <em>Start Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStartTime()
+ * @generated
+ * @ordered
+ */
+ protected Date startTime = START_TIME_EDEFAULT;
+
+ /**
+ * This is true if the Start Time attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean startTimeESet;
+
+ /**
+ * The default value of the '{@link #getStopTime() <em>Stop Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStopTime()
+ * @generated
+ * @ordered
+ */
+ protected static final Date STOP_TIME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getStopTime() <em>Stop Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStopTime()
+ * @generated
+ * @ordered
+ */
+ protected Date stopTime = STOP_TIME_EDEFAULT;
+
+ /**
+ * This is true if the Stop Time attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean stopTimeESet;
+
+ /**
+ * The default value of the '{@link #getTendency() <em>Tendency</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTendency()
+ * @generated
+ * @ordered
+ */
+ protected static final Tendency TENDENCY_EDEFAULT = Tendency.SLIGHTLY_INCREASING;
+
+ /**
+ * The cached value of the '{@link #getTendency() <em>Tendency</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTendency()
+ * @generated
+ * @ordered
+ */
+ protected Tendency tendency = TENDENCY_EDEFAULT;
+
+ /**
+ * This is true if the Tendency attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean tendencyESet;
+
+ /**
+ * The default value of the '{@link #getLengthAffected() <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLengthAffected()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer LENGTH_AFFECTED_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLengthAffected() <em>Length Affected</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLengthAffected()
+ * @generated
+ * @ordered
+ */
+ protected Integer lengthAffected = LENGTH_AFFECTED_EDEFAULT;
+
+ /**
+ * This is true if the Length Affected attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean lengthAffectedESet;
+
+ /**
+ * The default value of the '{@link #getAverageSpeedAbsolute() <em>Average Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAverageSpeedAbsolute()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer AVERAGE_SPEED_ABSOLUTE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAverageSpeedAbsolute() <em>Average Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAverageSpeedAbsolute()
+ * @generated
+ * @ordered
+ */
+ protected Integer averageSpeedAbsolute = AVERAGE_SPEED_ABSOLUTE_EDEFAULT;
+
+ /**
+ * This is true if the Average Speed Absolute attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean averageSpeedAbsoluteESet;
+
+ /**
+ * The default value of the '{@link #getDelay() <em>Delay</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDelay()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer DELAY_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDelay() <em>Delay</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDelay()
+ * @generated
+ * @ordered
+ */
+ protected Integer delay = DELAY_EDEFAULT;
+
+ /**
+ * This is true if the Delay attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean delayESet;
+
+ /**
+ * The default value of the '{@link #getSegmentSpeedLimit() <em>Segment Speed Limit</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSegmentSpeedLimit()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer SEGMENT_SPEED_LIMIT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSegmentSpeedLimit() <em>Segment Speed Limit</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSegmentSpeedLimit()
+ * @generated
+ * @ordered
+ */
+ protected Integer segmentSpeedLimit = SEGMENT_SPEED_LIMIT_EDEFAULT;
+
+ /**
+ * This is true if the Segment Speed Limit attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean segmentSpeedLimitESet;
+
+ /**
+ * The cached value of the '{@link #getCauses() <em>Causes</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCauses()
+ * @generated
+ * @ordered
+ */
+ protected EList<Cause> causes;
+
+ /**
+ * The cached value of the '{@link #getAdvices() <em>Advices</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAdvices()
+ * @generated
+ * @ordered
+ */
+ protected EList<Advice> advices;
+
+ /**
+ * The cached value of the '{@link #getApplicability() <em>Applicability</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getApplicability()
+ * @generated
+ * @ordered
+ */
+ protected EList<Applicability> applicability;
+
+ /**
+ * The default value of the '{@link #getTrafficIncidentId() <em>Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTrafficIncidentId()
+ * @generated
+ * @ordered
+ */
+ protected static final String TRAFFIC_INCIDENT_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getTrafficIncidentId() <em>Traffic Incident Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTrafficIncidentId()
+ * @generated
+ * @ordered
+ */
+ protected String trafficIncidentId = TRAFFIC_INCIDENT_ID_EDEFAULT;
+
+ /**
+ * This is true if the Traffic Incident Id attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean trafficIncidentIdESet;
+
+ /**
+ * The default value of the '{@link #getExpectedSpeedAbsolute() <em>Expected Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpectedSpeedAbsolute()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer EXPECTED_SPEED_ABSOLUTE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getExpectedSpeedAbsolute() <em>Expected Speed Absolute</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpectedSpeedAbsolute()
+ * @generated
+ * @ordered
+ */
+ protected Integer expectedSpeedAbsolute = EXPECTED_SPEED_ABSOLUTE_EDEFAULT;
+
+ /**
+ * This is true if the Expected Speed Absolute attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean expectedSpeedAbsoluteESet;
+
+ /**
+ * The default value of the '{@link #getExpirationTime() <em>Expiration Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpirationTime()
+ * @generated
+ * @ordered
+ */
+ protected static final Date EXPIRATION_TIME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getExpirationTime() <em>Expiration Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpirationTime()
+ * @generated
+ * @ordered
+ */
+ protected Date expirationTime = EXPIRATION_TIME_EDEFAULT;
+
+ /**
+ * This is true if the Expiration Time attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean expirationTimeESet;
+
+ /**
+ * The default value of the '{@link #getUpdateTime() <em>Update Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUpdateTime()
+ * @generated
+ * @ordered
+ */
+ protected static final Date UPDATE_TIME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUpdateTime() <em>Update Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUpdateTime()
+ * @generated
+ * @ordered
+ */
+ protected Date updateTime = UPDATE_TIME_EDEFAULT;
+
+ /**
+ * This is true if the Update Time attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean updateTimeESet;
+
+ /**
+ * The cached value of the '{@link #getLocationReference() <em>Location Reference</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLocationReference()
+ * @generated
+ * @ordered
+ */
+ protected LocationReference locationReference;
+
+ /**
+ * This is true if the Location Reference containment reference has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean locationReferenceESet;
+
+ /**
+ * The cached value of the '{@link #getTemporarySpeedLimit() <em>Temporary Speed Limit</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTemporarySpeedLimit()
+ * @generated
+ * @ordered
+ */
+ protected EList<TemporarySpeedLimit> temporarySpeedLimit;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TrafficIncidentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.TRAFFIC_INCIDENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EffectCode getEffectCode() {
+ return effectCode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEffectCode(EffectCode newEffectCode) {
+ EffectCode oldEffectCode = effectCode;
+ effectCode = newEffectCode == null ? EFFECT_CODE_EDEFAULT : newEffectCode;
+ boolean oldEffectCodeESet = effectCodeESet;
+ effectCodeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__EFFECT_CODE, oldEffectCode, effectCode, !oldEffectCodeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetEffectCode() {
+ EffectCode oldEffectCode = effectCode;
+ boolean oldEffectCodeESet = effectCodeESet;
+ effectCode = EFFECT_CODE_EDEFAULT;
+ effectCodeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__EFFECT_CODE, oldEffectCode, EFFECT_CODE_EDEFAULT, oldEffectCodeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetEffectCode() {
+ return effectCodeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Date getStartTime() {
+ return startTime;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStartTime(Date newStartTime) {
+ Date oldStartTime = startTime;
+ startTime = newStartTime;
+ boolean oldStartTimeESet = startTimeESet;
+ startTimeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__START_TIME, oldStartTime, startTime, !oldStartTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetStartTime() {
+ Date oldStartTime = startTime;
+ boolean oldStartTimeESet = startTimeESet;
+ startTime = START_TIME_EDEFAULT;
+ startTimeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__START_TIME, oldStartTime, START_TIME_EDEFAULT, oldStartTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetStartTime() {
+ return startTimeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Date getStopTime() {
+ return stopTime;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStopTime(Date newStopTime) {
+ Date oldStopTime = stopTime;
+ stopTime = newStopTime;
+ boolean oldStopTimeESet = stopTimeESet;
+ stopTimeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__STOP_TIME, oldStopTime, stopTime, !oldStopTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetStopTime() {
+ Date oldStopTime = stopTime;
+ boolean oldStopTimeESet = stopTimeESet;
+ stopTime = STOP_TIME_EDEFAULT;
+ stopTimeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__STOP_TIME, oldStopTime, STOP_TIME_EDEFAULT, oldStopTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetStopTime() {
+ return stopTimeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Tendency getTendency() {
+ return tendency;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTendency(Tendency newTendency) {
+ Tendency oldTendency = tendency;
+ tendency = newTendency == null ? TENDENCY_EDEFAULT : newTendency;
+ boolean oldTendencyESet = tendencyESet;
+ tendencyESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__TENDENCY, oldTendency, tendency, !oldTendencyESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetTendency() {
+ Tendency oldTendency = tendency;
+ boolean oldTendencyESet = tendencyESet;
+ tendency = TENDENCY_EDEFAULT;
+ tendencyESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__TENDENCY, oldTendency, TENDENCY_EDEFAULT, oldTendencyESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetTendency() {
+ return tendencyESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getLengthAffected() {
+ return lengthAffected;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLengthAffected(Integer newLengthAffected) {
+ Integer oldLengthAffected = lengthAffected;
+ lengthAffected = newLengthAffected;
+ boolean oldLengthAffectedESet = lengthAffectedESet;
+ lengthAffectedESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__LENGTH_AFFECTED, oldLengthAffected, lengthAffected, !oldLengthAffectedESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetLengthAffected() {
+ Integer oldLengthAffected = lengthAffected;
+ boolean oldLengthAffectedESet = lengthAffectedESet;
+ lengthAffected = LENGTH_AFFECTED_EDEFAULT;
+ lengthAffectedESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__LENGTH_AFFECTED, oldLengthAffected, LENGTH_AFFECTED_EDEFAULT, oldLengthAffectedESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetLengthAffected() {
+ return lengthAffectedESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getAverageSpeedAbsolute() {
+ return averageSpeedAbsolute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAverageSpeedAbsolute(Integer newAverageSpeedAbsolute) {
+ Integer oldAverageSpeedAbsolute = averageSpeedAbsolute;
+ averageSpeedAbsolute = newAverageSpeedAbsolute;
+ boolean oldAverageSpeedAbsoluteESet = averageSpeedAbsoluteESet;
+ averageSpeedAbsoluteESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE, oldAverageSpeedAbsolute, averageSpeedAbsolute, !oldAverageSpeedAbsoluteESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetAverageSpeedAbsolute() {
+ Integer oldAverageSpeedAbsolute = averageSpeedAbsolute;
+ boolean oldAverageSpeedAbsoluteESet = averageSpeedAbsoluteESet;
+ averageSpeedAbsolute = AVERAGE_SPEED_ABSOLUTE_EDEFAULT;
+ averageSpeedAbsoluteESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE, oldAverageSpeedAbsolute, AVERAGE_SPEED_ABSOLUTE_EDEFAULT, oldAverageSpeedAbsoluteESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetAverageSpeedAbsolute() {
+ return averageSpeedAbsoluteESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getDelay() {
+ return delay;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDelay(Integer newDelay) {
+ Integer oldDelay = delay;
+ delay = newDelay;
+ boolean oldDelayESet = delayESet;
+ delayESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__DELAY, oldDelay, delay, !oldDelayESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetDelay() {
+ Integer oldDelay = delay;
+ boolean oldDelayESet = delayESet;
+ delay = DELAY_EDEFAULT;
+ delayESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__DELAY, oldDelay, DELAY_EDEFAULT, oldDelayESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetDelay() {
+ return delayESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getSegmentSpeedLimit() {
+ return segmentSpeedLimit;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSegmentSpeedLimit(Integer newSegmentSpeedLimit) {
+ Integer oldSegmentSpeedLimit = segmentSpeedLimit;
+ segmentSpeedLimit = newSegmentSpeedLimit;
+ boolean oldSegmentSpeedLimitESet = segmentSpeedLimitESet;
+ segmentSpeedLimitESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT, oldSegmentSpeedLimit, segmentSpeedLimit, !oldSegmentSpeedLimitESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetSegmentSpeedLimit() {
+ Integer oldSegmentSpeedLimit = segmentSpeedLimit;
+ boolean oldSegmentSpeedLimitESet = segmentSpeedLimitESet;
+ segmentSpeedLimit = SEGMENT_SPEED_LIMIT_EDEFAULT;
+ segmentSpeedLimitESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT, oldSegmentSpeedLimit, SEGMENT_SPEED_LIMIT_EDEFAULT, oldSegmentSpeedLimitESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetSegmentSpeedLimit() {
+ return segmentSpeedLimitESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Cause> getCauses() {
+ if (causes == null) {
+ causes = new EObjectContainmentEList.Unsettable<Cause>(Cause.class, this, XTrafficIncidentPackage.TRAFFIC_INCIDENT__CAUSES);
+ }
+ return causes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetCauses() {
+ if (causes != null) ((InternalEList.Unsettable<?>)causes).unset();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetCauses() {
+ return causes != null && ((InternalEList.Unsettable<?>)causes).isSet();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Advice> getAdvices() {
+ if (advices == null) {
+ advices = new EObjectContainmentEList.Unsettable<Advice>(Advice.class, this, XTrafficIncidentPackage.TRAFFIC_INCIDENT__ADVICES);
+ }
+ return advices;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetAdvices() {
+ if (advices != null) ((InternalEList.Unsettable<?>)advices).unset();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetAdvices() {
+ return advices != null && ((InternalEList.Unsettable<?>)advices).isSet();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Applicability> getApplicability() {
+ if (applicability == null) {
+ applicability = new EObjectContainmentEList.Unsettable<Applicability>(Applicability.class, this, XTrafficIncidentPackage.TRAFFIC_INCIDENT__APPLICABILITY);
+ }
+ return applicability;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetApplicability() {
+ if (applicability != null) ((InternalEList.Unsettable<?>)applicability).unset();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetApplicability() {
+ return applicability != null && ((InternalEList.Unsettable<?>)applicability).isSet();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getTrafficIncidentId() {
+ return trafficIncidentId;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTrafficIncidentId(String newTrafficIncidentId) {
+ String oldTrafficIncidentId = trafficIncidentId;
+ trafficIncidentId = newTrafficIncidentId;
+ boolean oldTrafficIncidentIdESet = trafficIncidentIdESet;
+ trafficIncidentIdESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID, oldTrafficIncidentId, trafficIncidentId, !oldTrafficIncidentIdESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetTrafficIncidentId() {
+ String oldTrafficIncidentId = trafficIncidentId;
+ boolean oldTrafficIncidentIdESet = trafficIncidentIdESet;
+ trafficIncidentId = TRAFFIC_INCIDENT_ID_EDEFAULT;
+ trafficIncidentIdESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID, oldTrafficIncidentId, TRAFFIC_INCIDENT_ID_EDEFAULT, oldTrafficIncidentIdESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetTrafficIncidentId() {
+ return trafficIncidentIdESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getExpectedSpeedAbsolute() {
+ return expectedSpeedAbsolute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setExpectedSpeedAbsolute(Integer newExpectedSpeedAbsolute) {
+ Integer oldExpectedSpeedAbsolute = expectedSpeedAbsolute;
+ expectedSpeedAbsolute = newExpectedSpeedAbsolute;
+ boolean oldExpectedSpeedAbsoluteESet = expectedSpeedAbsoluteESet;
+ expectedSpeedAbsoluteESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE, oldExpectedSpeedAbsolute, expectedSpeedAbsolute, !oldExpectedSpeedAbsoluteESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetExpectedSpeedAbsolute() {
+ Integer oldExpectedSpeedAbsolute = expectedSpeedAbsolute;
+ boolean oldExpectedSpeedAbsoluteESet = expectedSpeedAbsoluteESet;
+ expectedSpeedAbsolute = EXPECTED_SPEED_ABSOLUTE_EDEFAULT;
+ expectedSpeedAbsoluteESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE, oldExpectedSpeedAbsolute, EXPECTED_SPEED_ABSOLUTE_EDEFAULT, oldExpectedSpeedAbsoluteESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetExpectedSpeedAbsolute() {
+ return expectedSpeedAbsoluteESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Date getExpirationTime() {
+ return expirationTime;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setExpirationTime(Date newExpirationTime) {
+ Date oldExpirationTime = expirationTime;
+ expirationTime = newExpirationTime;
+ boolean oldExpirationTimeESet = expirationTimeESet;
+ expirationTimeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPIRATION_TIME, oldExpirationTime, expirationTime, !oldExpirationTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetExpirationTime() {
+ Date oldExpirationTime = expirationTime;
+ boolean oldExpirationTimeESet = expirationTimeESet;
+ expirationTime = EXPIRATION_TIME_EDEFAULT;
+ expirationTimeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPIRATION_TIME, oldExpirationTime, EXPIRATION_TIME_EDEFAULT, oldExpirationTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetExpirationTime() {
+ return expirationTimeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Date getUpdateTime() {
+ return updateTime;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUpdateTime(Date newUpdateTime) {
+ Date oldUpdateTime = updateTime;
+ updateTime = newUpdateTime;
+ boolean oldUpdateTimeESet = updateTimeESet;
+ updateTimeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__UPDATE_TIME, oldUpdateTime, updateTime, !oldUpdateTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetUpdateTime() {
+ Date oldUpdateTime = updateTime;
+ boolean oldUpdateTimeESet = updateTimeESet;
+ updateTime = UPDATE_TIME_EDEFAULT;
+ updateTimeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__UPDATE_TIME, oldUpdateTime, UPDATE_TIME_EDEFAULT, oldUpdateTimeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetUpdateTime() {
+ return updateTimeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LocationReference getLocationReference() {
+ return locationReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetLocationReference(LocationReference newLocationReference, NotificationChain msgs) {
+ LocationReference oldLocationReference = locationReference;
+ locationReference = newLocationReference;
+ boolean oldLocationReferenceESet = locationReferenceESet;
+ locationReferenceESet = true;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE, oldLocationReference, newLocationReference, !oldLocationReferenceESet);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLocationReference(LocationReference newLocationReference) {
+ if (newLocationReference != locationReference) {
+ NotificationChain msgs = null;
+ if (locationReference != null)
+ msgs = ((InternalEObject)locationReference).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE, null, msgs);
+ if (newLocationReference != null)
+ msgs = ((InternalEObject)newLocationReference).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE, null, msgs);
+ msgs = basicSetLocationReference(newLocationReference, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else {
+ boolean oldLocationReferenceESet = locationReferenceESet;
+ locationReferenceESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE, newLocationReference, newLocationReference, !oldLocationReferenceESet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicUnsetLocationReference(NotificationChain msgs) {
+ LocationReference oldLocationReference = locationReference;
+ locationReference = null;
+ boolean oldLocationReferenceESet = locationReferenceESet;
+ locationReferenceESet = false;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE, oldLocationReference, null, oldLocationReferenceESet);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetLocationReference() {
+ if (locationReference != null) {
+ NotificationChain msgs = null;
+ msgs = ((InternalEObject)locationReference).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE, null, msgs);
+ msgs = basicUnsetLocationReference(msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else {
+ boolean oldLocationReferenceESet = locationReferenceESet;
+ locationReferenceESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE, null, null, oldLocationReferenceESet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetLocationReference() {
+ return locationReferenceESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<TemporarySpeedLimit> getTemporarySpeedLimit() {
+ if (temporarySpeedLimit == null) {
+ temporarySpeedLimit = new EObjectContainmentEList<TemporarySpeedLimit>(TemporarySpeedLimit.class, this, XTrafficIncidentPackage.TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT);
+ }
+ return temporarySpeedLimit;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__CAUSES:
+ return ((InternalEList<?>)getCauses()).basicRemove(otherEnd, msgs);
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__ADVICES:
+ return ((InternalEList<?>)getAdvices()).basicRemove(otherEnd, msgs);
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__APPLICABILITY:
+ return ((InternalEList<?>)getApplicability()).basicRemove(otherEnd, msgs);
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE:
+ return basicUnsetLocationReference(msgs);
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT:
+ return ((InternalEList<?>)getTemporarySpeedLimit()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EFFECT_CODE:
+ return getEffectCode();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__START_TIME:
+ return getStartTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__STOP_TIME:
+ return getStopTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TENDENCY:
+ return getTendency();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LENGTH_AFFECTED:
+ return getLengthAffected();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE:
+ return getAverageSpeedAbsolute();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__DELAY:
+ return getDelay();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT:
+ return getSegmentSpeedLimit();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__CAUSES:
+ return getCauses();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__ADVICES:
+ return getAdvices();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__APPLICABILITY:
+ return getApplicability();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID:
+ return getTrafficIncidentId();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE:
+ return getExpectedSpeedAbsolute();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPIRATION_TIME:
+ return getExpirationTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__UPDATE_TIME:
+ return getUpdateTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE:
+ return getLocationReference();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT:
+ return getTemporarySpeedLimit();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EFFECT_CODE:
+ setEffectCode((EffectCode)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__START_TIME:
+ setStartTime((Date)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__STOP_TIME:
+ setStopTime((Date)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TENDENCY:
+ setTendency((Tendency)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LENGTH_AFFECTED:
+ setLengthAffected((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE:
+ setAverageSpeedAbsolute((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__DELAY:
+ setDelay((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT:
+ setSegmentSpeedLimit((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__CAUSES:
+ getCauses().clear();
+ getCauses().addAll((Collection<? extends Cause>)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__ADVICES:
+ getAdvices().clear();
+ getAdvices().addAll((Collection<? extends Advice>)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__APPLICABILITY:
+ getApplicability().clear();
+ getApplicability().addAll((Collection<? extends Applicability>)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID:
+ setTrafficIncidentId((String)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE:
+ setExpectedSpeedAbsolute((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPIRATION_TIME:
+ setExpirationTime((Date)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__UPDATE_TIME:
+ setUpdateTime((Date)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE:
+ setLocationReference((LocationReference)newValue);
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT:
+ getTemporarySpeedLimit().clear();
+ getTemporarySpeedLimit().addAll((Collection<? extends TemporarySpeedLimit>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EFFECT_CODE:
+ unsetEffectCode();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__START_TIME:
+ unsetStartTime();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__STOP_TIME:
+ unsetStopTime();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TENDENCY:
+ unsetTendency();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LENGTH_AFFECTED:
+ unsetLengthAffected();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE:
+ unsetAverageSpeedAbsolute();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__DELAY:
+ unsetDelay();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT:
+ unsetSegmentSpeedLimit();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__CAUSES:
+ unsetCauses();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__ADVICES:
+ unsetAdvices();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__APPLICABILITY:
+ unsetApplicability();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID:
+ unsetTrafficIncidentId();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE:
+ unsetExpectedSpeedAbsolute();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPIRATION_TIME:
+ unsetExpirationTime();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__UPDATE_TIME:
+ unsetUpdateTime();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE:
+ unsetLocationReference();
+ return;
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT:
+ getTemporarySpeedLimit().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EFFECT_CODE:
+ return isSetEffectCode();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__START_TIME:
+ return isSetStartTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__STOP_TIME:
+ return isSetStopTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TENDENCY:
+ return isSetTendency();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LENGTH_AFFECTED:
+ return isSetLengthAffected();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE:
+ return isSetAverageSpeedAbsolute();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__DELAY:
+ return isSetDelay();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT:
+ return isSetSegmentSpeedLimit();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__CAUSES:
+ return isSetCauses();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__ADVICES:
+ return isSetAdvices();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__APPLICABILITY:
+ return isSetApplicability();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID:
+ return isSetTrafficIncidentId();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE:
+ return isSetExpectedSpeedAbsolute();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__EXPIRATION_TIME:
+ return isSetExpirationTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__UPDATE_TIME:
+ return isSetUpdateTime();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__LOCATION_REFERENCE:
+ return isSetLocationReference();
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT:
+ return temporarySpeedLimit != null && !temporarySpeedLimit.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (effectCode: ");
+ if (effectCodeESet) result.append(effectCode); else result.append("<unset>");
+ result.append(", startTime: ");
+ if (startTimeESet) result.append(startTime); else result.append("<unset>");
+ result.append(", stopTime: ");
+ if (stopTimeESet) result.append(stopTime); else result.append("<unset>");
+ result.append(", tendency: ");
+ if (tendencyESet) result.append(tendency); else result.append("<unset>");
+ result.append(", lengthAffected: ");
+ if (lengthAffectedESet) result.append(lengthAffected); else result.append("<unset>");
+ result.append(", averageSpeedAbsolute: ");
+ if (averageSpeedAbsoluteESet) result.append(averageSpeedAbsolute); else result.append("<unset>");
+ result.append(", delay: ");
+ if (delayESet) result.append(delay); else result.append("<unset>");
+ result.append(", segmentSpeedLimit: ");
+ if (segmentSpeedLimitESet) result.append(segmentSpeedLimit); else result.append("<unset>");
+ result.append(", trafficIncidentId: ");
+ if (trafficIncidentIdESet) result.append(trafficIncidentId); else result.append("<unset>");
+ result.append(", expectedSpeedAbsolute: ");
+ if (expectedSpeedAbsoluteESet) result.append(expectedSpeedAbsolute); else result.append("<unset>");
+ result.append(", expirationTime: ");
+ if (expirationTimeESet) result.append(expirationTime); else result.append("<unset>");
+ result.append(", updateTime: ");
+ if (updateTimeESet) result.append(updateTime); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //TrafficIncidentImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/VehicleRelatedRestrictionImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/VehicleRelatedRestrictionImpl.java
new file mode 100755
index 0000000..d6500de
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/VehicleRelatedRestrictionImpl.java
@@ -0,0 +1,435 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.genivi.locref.LocationReference;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.RestrictionType;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Vehicle Related Restriction</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.VehicleRelatedRestrictionImpl#getRestrictionType <em>Restriction Type</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.VehicleRelatedRestrictionImpl#getRestrictionValue <em>Restriction Value</em>}</li>
+ * <li>{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl.VehicleRelatedRestrictionImpl#getRestrictionLocationReference <em>Restriction Location Reference</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VehicleRelatedRestrictionImpl extends EObjectImpl implements VehicleRelatedRestriction {
+ /**
+ * The default value of the '{@link #getRestrictionType() <em>Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRestrictionType()
+ * @generated
+ * @ordered
+ */
+ protected static final RestrictionType RESTRICTION_TYPE_EDEFAULT = RestrictionType.WIDTH_LESS_THAN;
+
+ /**
+ * The cached value of the '{@link #getRestrictionType() <em>Restriction Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRestrictionType()
+ * @generated
+ * @ordered
+ */
+ protected RestrictionType restrictionType = RESTRICTION_TYPE_EDEFAULT;
+
+ /**
+ * This is true if the Restriction Type attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean restrictionTypeESet;
+
+ /**
+ * The default value of the '{@link #getRestrictionValue() <em>Restriction Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRestrictionValue()
+ * @generated
+ * @ordered
+ */
+ protected static final Integer RESTRICTION_VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getRestrictionValue() <em>Restriction Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRestrictionValue()
+ * @generated
+ * @ordered
+ */
+ protected Integer restrictionValue = RESTRICTION_VALUE_EDEFAULT;
+
+ /**
+ * This is true if the Restriction Value attribute has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean restrictionValueESet;
+
+ /**
+ * The cached value of the '{@link #getRestrictionLocationReference() <em>Restriction Location Reference</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRestrictionLocationReference()
+ * @generated
+ * @ordered
+ */
+ protected LocationReference restrictionLocationReference;
+
+ /**
+ * This is true if the Restriction Location Reference containment reference has been set.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ protected boolean restrictionLocationReferenceESet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VehicleRelatedRestrictionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return XTrafficIncidentPackage.Literals.VEHICLE_RELATED_RESTRICTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RestrictionType getRestrictionType() {
+ return restrictionType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRestrictionType(RestrictionType newRestrictionType) {
+ RestrictionType oldRestrictionType = restrictionType;
+ restrictionType = newRestrictionType == null ? RESTRICTION_TYPE_EDEFAULT : newRestrictionType;
+ boolean oldRestrictionTypeESet = restrictionTypeESet;
+ restrictionTypeESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE, oldRestrictionType, restrictionType, !oldRestrictionTypeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetRestrictionType() {
+ RestrictionType oldRestrictionType = restrictionType;
+ boolean oldRestrictionTypeESet = restrictionTypeESet;
+ restrictionType = RESTRICTION_TYPE_EDEFAULT;
+ restrictionTypeESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE, oldRestrictionType, RESTRICTION_TYPE_EDEFAULT, oldRestrictionTypeESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetRestrictionType() {
+ return restrictionTypeESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Integer getRestrictionValue() {
+ return restrictionValue;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRestrictionValue(Integer newRestrictionValue) {
+ Integer oldRestrictionValue = restrictionValue;
+ restrictionValue = newRestrictionValue;
+ boolean oldRestrictionValueESet = restrictionValueESet;
+ restrictionValueESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE, oldRestrictionValue, restrictionValue, !oldRestrictionValueESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetRestrictionValue() {
+ Integer oldRestrictionValue = restrictionValue;
+ boolean oldRestrictionValueESet = restrictionValueESet;
+ restrictionValue = RESTRICTION_VALUE_EDEFAULT;
+ restrictionValueESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE, oldRestrictionValue, RESTRICTION_VALUE_EDEFAULT, oldRestrictionValueESet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetRestrictionValue() {
+ return restrictionValueESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LocationReference getRestrictionLocationReference() {
+ return restrictionLocationReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetRestrictionLocationReference(LocationReference newRestrictionLocationReference, NotificationChain msgs) {
+ LocationReference oldRestrictionLocationReference = restrictionLocationReference;
+ restrictionLocationReference = newRestrictionLocationReference;
+ boolean oldRestrictionLocationReferenceESet = restrictionLocationReferenceESet;
+ restrictionLocationReferenceESet = true;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE, oldRestrictionLocationReference, newRestrictionLocationReference, !oldRestrictionLocationReferenceESet);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRestrictionLocationReference(LocationReference newRestrictionLocationReference) {
+ if (newRestrictionLocationReference != restrictionLocationReference) {
+ NotificationChain msgs = null;
+ if (restrictionLocationReference != null)
+ msgs = ((InternalEObject)restrictionLocationReference).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE, null, msgs);
+ if (newRestrictionLocationReference != null)
+ msgs = ((InternalEObject)newRestrictionLocationReference).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE, null, msgs);
+ msgs = basicSetRestrictionLocationReference(newRestrictionLocationReference, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else {
+ boolean oldRestrictionLocationReferenceESet = restrictionLocationReferenceESet;
+ restrictionLocationReferenceESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE, newRestrictionLocationReference, newRestrictionLocationReference, !oldRestrictionLocationReferenceESet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicUnsetRestrictionLocationReference(NotificationChain msgs) {
+ LocationReference oldRestrictionLocationReference = restrictionLocationReference;
+ restrictionLocationReference = null;
+ boolean oldRestrictionLocationReferenceESet = restrictionLocationReferenceESet;
+ restrictionLocationReferenceESet = false;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE, oldRestrictionLocationReference, null, oldRestrictionLocationReferenceESet);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void unsetRestrictionLocationReference() {
+ if (restrictionLocationReference != null) {
+ NotificationChain msgs = null;
+ msgs = ((InternalEObject)restrictionLocationReference).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE, null, msgs);
+ msgs = basicUnsetRestrictionLocationReference(msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else {
+ boolean oldRestrictionLocationReferenceESet = restrictionLocationReferenceESet;
+ restrictionLocationReferenceESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE, null, null, oldRestrictionLocationReferenceESet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isSetRestrictionLocationReference() {
+ return restrictionLocationReferenceESet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE:
+ return basicUnsetRestrictionLocationReference(msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE:
+ return getRestrictionType();
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE:
+ return getRestrictionValue();
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE:
+ return getRestrictionLocationReference();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE:
+ setRestrictionType((RestrictionType)newValue);
+ return;
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE:
+ setRestrictionValue((Integer)newValue);
+ return;
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE:
+ setRestrictionLocationReference((LocationReference)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE:
+ unsetRestrictionType();
+ return;
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE:
+ unsetRestrictionValue();
+ return;
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE:
+ unsetRestrictionLocationReference();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE:
+ return isSetRestrictionType();
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE:
+ return isSetRestrictionValue();
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE:
+ return isSetRestrictionLocationReference();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (restrictionType: ");
+ if (restrictionTypeESet) result.append(restrictionType); else result.append("<unset>");
+ result.append(", restrictionValue: ");
+ if (restrictionValueESet) result.append(restrictionValue); else result.append("<unset>");
+ result.append(')');
+ return result.toString();
+ }
+
+} //VehicleRelatedRestrictionImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentFactoryImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentFactoryImpl.java
new file mode 100755
index 0000000..de95e95
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentFactoryImpl.java
@@ -0,0 +1,199 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class XTrafficIncidentFactoryImpl extends EFactoryImpl implements XTrafficIncidentFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static XTrafficIncidentFactory init() {
+ try {
+ XTrafficIncidentFactory theXTrafficIncidentFactory = (XTrafficIncidentFactory)EPackage.Registry.INSTANCE.getEFactory(XTrafficIncidentPackage.eNS_URI);
+ if (theXTrafficIncidentFactory != null) {
+ return theXTrafficIncidentFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new XTrafficIncidentFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public XTrafficIncidentFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT: return createTrafficIncident();
+ case XTrafficIncidentPackage.CAUSE: return createCause();
+ case XTrafficIncidentPackage.LINKED_CAUSE: return createLinkedCause();
+ case XTrafficIncidentPackage.DIRECT_CAUSE: return createDirectCause();
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS: return createLaneRestrictions();
+ case XTrafficIncidentPackage.ADVICE: return createAdvice();
+ case XTrafficIncidentPackage.APPLICABILITY: return createApplicability();
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION: return createVehicleRelatedRestriction();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION: return createTemporarySpeedLimitSection();
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT: return createTemporarySpeedLimit();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TrafficIncident createTrafficIncident() {
+ TrafficIncidentImpl trafficIncident = new TrafficIncidentImpl();
+ return trafficIncident;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Cause createCause() {
+ CauseImpl cause = new CauseImpl();
+ return cause;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LinkedCause createLinkedCause() {
+ LinkedCauseImpl linkedCause = new LinkedCauseImpl();
+ return linkedCause;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DirectCause createDirectCause() {
+ DirectCauseImpl directCause = new DirectCauseImpl();
+ return directCause;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LaneRestrictions createLaneRestrictions() {
+ LaneRestrictionsImpl laneRestrictions = new LaneRestrictionsImpl();
+ return laneRestrictions;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Advice createAdvice() {
+ AdviceImpl advice = new AdviceImpl();
+ return advice;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Applicability createApplicability() {
+ ApplicabilityImpl applicability = new ApplicabilityImpl();
+ return applicability;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VehicleRelatedRestriction createVehicleRelatedRestriction() {
+ VehicleRelatedRestrictionImpl vehicleRelatedRestriction = new VehicleRelatedRestrictionImpl();
+ return vehicleRelatedRestriction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TemporarySpeedLimitSection createTemporarySpeedLimitSection() {
+ TemporarySpeedLimitSectionImpl temporarySpeedLimitSection = new TemporarySpeedLimitSectionImpl();
+ return temporarySpeedLimitSection;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TemporarySpeedLimit createTemporarySpeedLimit() {
+ TemporarySpeedLimitImpl temporarySpeedLimit = new TemporarySpeedLimitImpl();
+ return temporarySpeedLimit;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public XTrafficIncidentPackage getXTrafficIncidentPackage() {
+ return (XTrafficIncidentPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static XTrafficIncidentPackage getPackage() {
+ return XTrafficIncidentPackage.eINSTANCE;
+ }
+
+} //XTrafficIncidentFactoryImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentPackageImpl.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentPackageImpl.java
new file mode 100755
index 0000000..9a3f712
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/impl/XTrafficIncidentPackageImpl.java
@@ -0,0 +1,882 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.genivi.common.CommonPackage;
+
+import org.genivi.locref.locrefPackage;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentFactory;
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage;
+import org.genivi.trafficincidentsservice.trafficincidenttables.trafficincidenttablesPackage;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class XTrafficIncidentPackageImpl extends EPackageImpl implements XTrafficIncidentPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass trafficIncidentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass causeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass linkedCauseEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass directCauseEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass laneRestrictionsEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass adviceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass applicabilityEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vehicleRelatedRestrictionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass temporarySpeedLimitSectionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass temporarySpeedLimitEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private XTrafficIncidentPackageImpl() {
+ super(eNS_URI, XTrafficIncidentFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link XTrafficIncidentPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static XTrafficIncidentPackage init() {
+ if (isInited) return (XTrafficIncidentPackage)EPackage.Registry.INSTANCE.getEPackage(XTrafficIncidentPackage.eNS_URI);
+
+ // Obtain or create and register package
+ XTrafficIncidentPackageImpl theXTrafficIncidentPackage = (XTrafficIncidentPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof XTrafficIncidentPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new XTrafficIncidentPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ locrefPackage.eINSTANCE.eClass();
+ trafficincidenttablesPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theXTrafficIncidentPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theXTrafficIncidentPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theXTrafficIncidentPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(XTrafficIncidentPackage.eNS_URI, theXTrafficIncidentPackage);
+ return theXTrafficIncidentPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTrafficIncident() {
+ return trafficIncidentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_EffectCode() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_StartTime() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_StopTime() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_Tendency() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_LengthAffected() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_AverageSpeedAbsolute() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_Delay() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_SegmentSpeedLimit() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTrafficIncident_Causes() {
+ return (EReference)trafficIncidentEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTrafficIncident_Advices() {
+ return (EReference)trafficIncidentEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTrafficIncident_Applicability() {
+ return (EReference)trafficIncidentEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_TrafficIncidentId() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_ExpectedSpeedAbsolute() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(12);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_ExpirationTime() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(13);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTrafficIncident_UpdateTime() {
+ return (EAttribute)trafficIncidentEClass.getEStructuralFeatures().get(14);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTrafficIncident_LocationReference() {
+ return (EReference)trafficIncidentEClass.getEStructuralFeatures().get(15);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTrafficIncident_TemporarySpeedLimit() {
+ return (EReference)trafficIncidentEClass.getEStructuralFeatures().get(16);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCause() {
+ return causeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getCause_MainCause() {
+ return (EAttribute)causeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLinkedCause() {
+ return linkedCauseEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getLinkedCause_CauseTrafficIncidentId() {
+ return (EAttribute)linkedCauseEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDirectCause() {
+ return directCauseEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDirectCause_WarningLevel() {
+ return (EAttribute)directCauseEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDirectCause_UnverifiedInformation() {
+ return (EAttribute)directCauseEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDirectCause_SubCause() {
+ return (EAttribute)directCauseEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDirectCause_LengthAffected() {
+ return (EAttribute)directCauseEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectCause_LaneRestrictions() {
+ return (EReference)directCauseEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectCause_FreeText() {
+ return (EReference)directCauseEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDirectCause_CauseOffset() {
+ return (EAttribute)directCauseEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getLaneRestrictions() {
+ return laneRestrictionsEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getLaneRestrictions_LaneRestrictionType() {
+ return (EAttribute)laneRestrictionsEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getLaneRestrictions_NumberOfLanes() {
+ return (EAttribute)laneRestrictionsEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAdvice() {
+ return adviceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getAdvice_MainAdvice() {
+ return (EAttribute)adviceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getAdvice_SubAdvice() {
+ return (EAttribute)adviceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAdvice_FreeText() {
+ return (EReference)adviceEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAdvice_Applicability() {
+ return (EReference)adviceEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getApplicability() {
+ return applicabilityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getApplicability_VehicleType() {
+ return (EAttribute)applicabilityEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getApplicability_VehicleRelatedRestrictions() {
+ return (EReference)applicabilityEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVehicleRelatedRestriction() {
+ return vehicleRelatedRestrictionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVehicleRelatedRestriction_RestrictionType() {
+ return (EAttribute)vehicleRelatedRestrictionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVehicleRelatedRestriction_RestrictionValue() {
+ return (EAttribute)vehicleRelatedRestrictionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVehicleRelatedRestriction_RestrictionLocationReference() {
+ return (EReference)vehicleRelatedRestrictionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTemporarySpeedLimitSection() {
+ return temporarySpeedLimitSectionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTemporarySpeedLimitSection_SpeedLimitValue() {
+ return (EAttribute)temporarySpeedLimitSectionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTemporarySpeedLimitSection_SpeedLimitValueWet() {
+ return (EAttribute)temporarySpeedLimitSectionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTemporarySpeedLimitSection_SpeedLimitLength() {
+ return (EAttribute)temporarySpeedLimitSectionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTemporarySpeedLimit() {
+ return temporarySpeedLimitEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTemporarySpeedLimit_TemporarySpeedLimitSections() {
+ return (EReference)temporarySpeedLimitEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTemporarySpeedLimit_UnitsMPH() {
+ return (EAttribute)temporarySpeedLimitEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTemporarySpeedLimit_Offset() {
+ return (EAttribute)temporarySpeedLimitEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTemporarySpeedLimit_Applicability() {
+ return (EReference)temporarySpeedLimitEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public XTrafficIncidentFactory getXTrafficIncidentFactory() {
+ return (XTrafficIncidentFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ trafficIncidentEClass = createEClass(TRAFFIC_INCIDENT);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__EFFECT_CODE);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__START_TIME);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__STOP_TIME);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__TENDENCY);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__LENGTH_AFFECTED);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__AVERAGE_SPEED_ABSOLUTE);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__DELAY);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__SEGMENT_SPEED_LIMIT);
+ createEReference(trafficIncidentEClass, TRAFFIC_INCIDENT__CAUSES);
+ createEReference(trafficIncidentEClass, TRAFFIC_INCIDENT__ADVICES);
+ createEReference(trafficIncidentEClass, TRAFFIC_INCIDENT__APPLICABILITY);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__TRAFFIC_INCIDENT_ID);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__EXPECTED_SPEED_ABSOLUTE);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__EXPIRATION_TIME);
+ createEAttribute(trafficIncidentEClass, TRAFFIC_INCIDENT__UPDATE_TIME);
+ createEReference(trafficIncidentEClass, TRAFFIC_INCIDENT__LOCATION_REFERENCE);
+ createEReference(trafficIncidentEClass, TRAFFIC_INCIDENT__TEMPORARY_SPEED_LIMIT);
+
+ causeEClass = createEClass(CAUSE);
+ createEAttribute(causeEClass, CAUSE__MAIN_CAUSE);
+
+ linkedCauseEClass = createEClass(LINKED_CAUSE);
+ createEAttribute(linkedCauseEClass, LINKED_CAUSE__CAUSE_TRAFFIC_INCIDENT_ID);
+
+ directCauseEClass = createEClass(DIRECT_CAUSE);
+ createEAttribute(directCauseEClass, DIRECT_CAUSE__WARNING_LEVEL);
+ createEAttribute(directCauseEClass, DIRECT_CAUSE__UNVERIFIED_INFORMATION);
+ createEAttribute(directCauseEClass, DIRECT_CAUSE__SUB_CAUSE);
+ createEAttribute(directCauseEClass, DIRECT_CAUSE__LENGTH_AFFECTED);
+ createEReference(directCauseEClass, DIRECT_CAUSE__LANE_RESTRICTIONS);
+ createEReference(directCauseEClass, DIRECT_CAUSE__FREE_TEXT);
+ createEAttribute(directCauseEClass, DIRECT_CAUSE__CAUSE_OFFSET);
+
+ laneRestrictionsEClass = createEClass(LANE_RESTRICTIONS);
+ createEAttribute(laneRestrictionsEClass, LANE_RESTRICTIONS__LANE_RESTRICTION_TYPE);
+ createEAttribute(laneRestrictionsEClass, LANE_RESTRICTIONS__NUMBER_OF_LANES);
+
+ adviceEClass = createEClass(ADVICE);
+ createEAttribute(adviceEClass, ADVICE__MAIN_ADVICE);
+ createEAttribute(adviceEClass, ADVICE__SUB_ADVICE);
+ createEReference(adviceEClass, ADVICE__FREE_TEXT);
+ createEReference(adviceEClass, ADVICE__APPLICABILITY);
+
+ applicabilityEClass = createEClass(APPLICABILITY);
+ createEAttribute(applicabilityEClass, APPLICABILITY__VEHICLE_TYPE);
+ createEReference(applicabilityEClass, APPLICABILITY__VEHICLE_RELATED_RESTRICTIONS);
+
+ vehicleRelatedRestrictionEClass = createEClass(VEHICLE_RELATED_RESTRICTION);
+ createEAttribute(vehicleRelatedRestrictionEClass, VEHICLE_RELATED_RESTRICTION__RESTRICTION_TYPE);
+ createEAttribute(vehicleRelatedRestrictionEClass, VEHICLE_RELATED_RESTRICTION__RESTRICTION_VALUE);
+ createEReference(vehicleRelatedRestrictionEClass, VEHICLE_RELATED_RESTRICTION__RESTRICTION_LOCATION_REFERENCE);
+
+ temporarySpeedLimitSectionEClass = createEClass(TEMPORARY_SPEED_LIMIT_SECTION);
+ createEAttribute(temporarySpeedLimitSectionEClass, TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE);
+ createEAttribute(temporarySpeedLimitSectionEClass, TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_VALUE_WET);
+ createEAttribute(temporarySpeedLimitSectionEClass, TEMPORARY_SPEED_LIMIT_SECTION__SPEED_LIMIT_LENGTH);
+
+ temporarySpeedLimitEClass = createEClass(TEMPORARY_SPEED_LIMIT);
+ createEReference(temporarySpeedLimitEClass, TEMPORARY_SPEED_LIMIT__TEMPORARY_SPEED_LIMIT_SECTIONS);
+ createEAttribute(temporarySpeedLimitEClass, TEMPORARY_SPEED_LIMIT__UNITS_MPH);
+ createEAttribute(temporarySpeedLimitEClass, TEMPORARY_SPEED_LIMIT__OFFSET);
+ createEReference(temporarySpeedLimitEClass, TEMPORARY_SPEED_LIMIT__APPLICABILITY);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ trafficincidenttablesPackage thetrafficincidenttablesPackage = (trafficincidenttablesPackage)EPackage.Registry.INSTANCE.getEPackage(trafficincidenttablesPackage.eNS_URI);
+ locrefPackage thelocrefPackage = (locrefPackage)EPackage.Registry.INSTANCE.getEPackage(locrefPackage.eNS_URI);
+ CommonPackage theCommonPackage = (CommonPackage)EPackage.Registry.INSTANCE.getEPackage(CommonPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ linkedCauseEClass.getESuperTypes().add(this.getCause());
+ directCauseEClass.getESuperTypes().add(this.getCause());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(trafficIncidentEClass, TrafficIncident.class, "TrafficIncident", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTrafficIncident_EffectCode(), thetrafficincidenttablesPackage.getEffectCode(), "effectCode", null, 1, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_StartTime(), ecorePackage.getEDate(), "startTime", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_StopTime(), ecorePackage.getEDate(), "stopTime", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_Tendency(), thetrafficincidenttablesPackage.getTendency(), "tendency", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_LengthAffected(), ecorePackage.getEIntegerObject(), "lengthAffected", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_AverageSpeedAbsolute(), ecorePackage.getEIntegerObject(), "averageSpeedAbsolute", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_Delay(), ecorePackage.getEIntegerObject(), "delay", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_SegmentSpeedLimit(), ecorePackage.getEIntegerObject(), "segmentSpeedLimit", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTrafficIncident_Causes(), this.getCause(), null, "causes", null, 0, -1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTrafficIncident_Advices(), this.getAdvice(), null, "advices", null, 0, -1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTrafficIncident_Applicability(), this.getApplicability(), null, "applicability", null, 0, -1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_TrafficIncidentId(), ecorePackage.getEString(), "trafficIncidentId", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_ExpectedSpeedAbsolute(), ecorePackage.getEIntegerObject(), "expectedSpeedAbsolute", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_ExpirationTime(), ecorePackage.getEDate(), "expirationTime", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTrafficIncident_UpdateTime(), ecorePackage.getEDate(), "updateTime", null, 0, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTrafficIncident_LocationReference(), thelocrefPackage.getLocationReference(), null, "locationReference", null, 1, 1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTrafficIncident_TemporarySpeedLimit(), this.getTemporarySpeedLimit(), null, "temporarySpeedLimit", null, 0, -1, TrafficIncident.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(causeEClass, Cause.class, "Cause", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getCause_MainCause(), thetrafficincidenttablesPackage.getCauseCode(), "mainCause", null, 0, 1, Cause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(linkedCauseEClass, LinkedCause.class, "LinkedCause", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getLinkedCause_CauseTrafficIncidentId(), ecorePackage.getEString(), "causeTrafficIncidentId", null, 0, 1, LinkedCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(directCauseEClass, DirectCause.class, "DirectCause", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDirectCause_WarningLevel(), thetrafficincidenttablesPackage.getWarningLevel(), "warningLevel", null, 1, 1, DirectCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDirectCause_UnverifiedInformation(), ecorePackage.getEBoolean(), "unverifiedInformation", null, 1, 1, DirectCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDirectCause_SubCause(), ecorePackage.getEJavaObject(), "subCause", null, 0, 1, DirectCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDirectCause_LengthAffected(), ecorePackage.getEIntegerObject(), "lengthAffected", null, 0, 1, DirectCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDirectCause_LaneRestrictions(), this.getLaneRestrictions(), null, "laneRestrictions", null, 0, 1, DirectCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDirectCause_FreeText(), theCommonPackage.getLocalizedString(), null, "freeText", null, 0, -1, DirectCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDirectCause_CauseOffset(), ecorePackage.getEIntegerObject(), "causeOffset", null, 0, 1, DirectCause.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(laneRestrictionsEClass, LaneRestrictions.class, "LaneRestrictions", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getLaneRestrictions_LaneRestrictionType(), thetrafficincidenttablesPackage.getLaneRestrictionType(), "laneRestrictionType", null, 0, 1, LaneRestrictions.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getLaneRestrictions_NumberOfLanes(), ecorePackage.getEIntegerObject(), "numberOfLanes", null, 0, 1, LaneRestrictions.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(adviceEClass, Advice.class, "Advice", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getAdvice_MainAdvice(), thetrafficincidenttablesPackage.getAdviceCode(), "mainAdvice", null, 0, 1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getAdvice_SubAdvice(), ecorePackage.getEJavaObject(), "subAdvice", null, 0, 1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAdvice_FreeText(), theCommonPackage.getLocalizedString(), null, "freeText", null, 0, -1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAdvice_Applicability(), this.getApplicability(), null, "applicability", null, 0, -1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(applicabilityEClass, Applicability.class, "Applicability", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getApplicability_VehicleType(), thetrafficincidenttablesPackage.getVehicleType(), "vehicleType", null, 0, 1, Applicability.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getApplicability_VehicleRelatedRestrictions(), this.getVehicleRelatedRestriction(), null, "vehicleRelatedRestrictions", null, 0, -1, Applicability.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vehicleRelatedRestrictionEClass, VehicleRelatedRestriction.class, "VehicleRelatedRestriction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getVehicleRelatedRestriction_RestrictionType(), thetrafficincidenttablesPackage.getRestrictionType(), "restrictionType", null, 1, 1, VehicleRelatedRestriction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVehicleRelatedRestriction_RestrictionValue(), ecorePackage.getEIntegerObject(), "restrictionValue", null, 0, 1, VehicleRelatedRestriction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVehicleRelatedRestriction_RestrictionLocationReference(), thelocrefPackage.getLocationReference(), null, "restrictionLocationReference", null, 0, 1, VehicleRelatedRestriction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(temporarySpeedLimitSectionEClass, TemporarySpeedLimitSection.class, "TemporarySpeedLimitSection", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTemporarySpeedLimitSection_SpeedLimitValue(), ecorePackage.getEShort(), "speedLimitValue", null, 1, 1, TemporarySpeedLimitSection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTemporarySpeedLimitSection_SpeedLimitValueWet(), ecorePackage.getEShort(), "speedLimitValueWet", null, 0, 1, TemporarySpeedLimitSection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTemporarySpeedLimitSection_SpeedLimitLength(), ecorePackage.getEIntegerObject(), "speedLimitLength", null, 0, 1, TemporarySpeedLimitSection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(temporarySpeedLimitEClass, TemporarySpeedLimit.class, "TemporarySpeedLimit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getTemporarySpeedLimit_TemporarySpeedLimitSections(), this.getTemporarySpeedLimitSection(), null, "temporarySpeedLimitSections", null, 1, -1, TemporarySpeedLimit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTemporarySpeedLimit_UnitsMPH(), ecorePackage.getEBoolean(), "unitsMPH", null, 1, 1, TemporarySpeedLimit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTemporarySpeedLimit_Offset(), ecorePackage.getEIntegerObject(), "offset", null, 0, 1, TemporarySpeedLimit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTemporarySpeedLimit_Applicability(), this.getApplicability(), null, "applicability", null, 0, -1, TemporarySpeedLimit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // GenModel
+ createGenModelAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>GenModel</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createGenModelAnnotations() {
+ String source = "GenModel";
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "documentation", "Copyright (C) 2013 TomTom International B.V.\r\n\r\nThis Source Code Form is subject to the terms of the Mozilla Public\r\nLicense, v. 2.0. If a copy of the MPL was not distributed with this\r\nfile, You can obtain one at http://mozilla.org/MPL/2.0/."
+ });
+ }
+
+} //XTrafficIncidentPackageImpl
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentAdapterFactory.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentAdapterFactory.java
new file mode 100755
index 0000000..a0f4b15
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentAdapterFactory.java
@@ -0,0 +1,287 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage
+ * @generated
+ */
+public class XTrafficIncidentAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static XTrafficIncidentPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public XTrafficIncidentAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = XTrafficIncidentPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected XTrafficIncidentSwitch<Adapter> modelSwitch =
+ new XTrafficIncidentSwitch<Adapter>() {
+ @Override
+ public Adapter caseTrafficIncident(TrafficIncident object) {
+ return createTrafficIncidentAdapter();
+ }
+ @Override
+ public Adapter caseCause(Cause object) {
+ return createCauseAdapter();
+ }
+ @Override
+ public Adapter caseLinkedCause(LinkedCause object) {
+ return createLinkedCauseAdapter();
+ }
+ @Override
+ public Adapter caseDirectCause(DirectCause object) {
+ return createDirectCauseAdapter();
+ }
+ @Override
+ public Adapter caseLaneRestrictions(LaneRestrictions object) {
+ return createLaneRestrictionsAdapter();
+ }
+ @Override
+ public Adapter caseAdvice(Advice object) {
+ return createAdviceAdapter();
+ }
+ @Override
+ public Adapter caseApplicability(Applicability object) {
+ return createApplicabilityAdapter();
+ }
+ @Override
+ public Adapter caseVehicleRelatedRestriction(VehicleRelatedRestriction object) {
+ return createVehicleRelatedRestrictionAdapter();
+ }
+ @Override
+ public Adapter caseTemporarySpeedLimitSection(TemporarySpeedLimitSection object) {
+ return createTemporarySpeedLimitSectionAdapter();
+ }
+ @Override
+ public Adapter caseTemporarySpeedLimit(TemporarySpeedLimit object) {
+ return createTemporarySpeedLimitAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident <em>Traffic Incident</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TrafficIncident
+ * @generated
+ */
+ public Adapter createTrafficIncidentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause <em>Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Cause
+ * @generated
+ */
+ public Adapter createCauseAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause <em>Linked Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LinkedCause
+ * @generated
+ */
+ public Adapter createLinkedCauseAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause <em>Direct Cause</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.DirectCause
+ * @generated
+ */
+ public Adapter createDirectCauseAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions <em>Lane Restrictions</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.LaneRestrictions
+ * @generated
+ */
+ public Adapter createLaneRestrictionsAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice <em>Advice</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Advice
+ * @generated
+ */
+ public Adapter createAdviceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability <em>Applicability</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.Applicability
+ * @generated
+ */
+ public Adapter createApplicabilityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction <em>Vehicle Related Restriction</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.VehicleRelatedRestriction
+ * @generated
+ */
+ public Adapter createVehicleRelatedRestrictionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection <em>Temporary Speed Limit Section</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimitSection
+ * @generated
+ */
+ public Adapter createTemporarySpeedLimitSectionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit <em>Temporary Speed Limit</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.TemporarySpeedLimit
+ * @generated
+ */
+ public Adapter createTemporarySpeedLimitAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //XTrafficIncidentAdapterFactory
diff --git a/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentSwitch.java b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentSwitch.java
new file mode 100755
index 0000000..1899ea2
--- /dev/null
+++ b/src/traffic-incidents-service/org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincidentfeed-trafficincident-model/src/org/genivi/trafficincidentsservice/trafficincidentfeed/trafficincident/util/XTrafficIncidentSwitch.java
@@ -0,0 +1,306 @@
+/**
+ * Copyright (C) 2013 TomTom International B.V.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.genivi.trafficincidentsservice.trafficincidentfeed.trafficincident.XTrafficIncidentPackage
+ * @generated
+ */
+public class XTrafficIncidentSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static XTrafficIncidentPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public XTrafficIncidentSwitch() {
+ if (modelPackage == null) {
+ modelPackage = XTrafficIncidentPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case XTrafficIncidentPackage.TRAFFIC_INCIDENT: {
+ TrafficIncident trafficIncident = (TrafficIncident)theEObject;
+ T result = caseTrafficIncident(trafficIncident);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.CAUSE: {
+ Cause cause = (Cause)theEObject;
+ T result = caseCause(cause);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.LINKED_CAUSE: {
+ LinkedCause linkedCause = (LinkedCause)theEObject;
+ T result = caseLinkedCause(linkedCause);
+ if (result == null) result = caseCause(linkedCause);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.DIRECT_CAUSE: {
+ DirectCause directCause = (DirectCause)theEObject;
+ T result = caseDirectCause(directCause);
+ if (result == null) result = caseCause(directCause);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.LANE_RESTRICTIONS: {
+ LaneRestrictions laneRestrictions = (LaneRestrictions)theEObject;
+ T result = caseLaneRestrictions(laneRestrictions);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.ADVICE: {
+ Advice advice = (Advice)theEObject;
+ T result = caseAdvice(advice);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.APPLICABILITY: {
+ Applicability applicability = (Applicability)theEObject;
+ T result = caseApplicability(applicability);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.VEHICLE_RELATED_RESTRICTION: {
+ VehicleRelatedRestriction vehicleRelatedRestriction = (VehicleRelatedRestriction)theEObject;
+ T result = caseVehicleRelatedRestriction(vehicleRelatedRestriction);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT_SECTION: {
+ TemporarySpeedLimitSection temporarySpeedLimitSection = (TemporarySpeedLimitSection)theEObject;
+ T result = caseTemporarySpeedLimitSection(temporarySpeedLimitSection);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case XTrafficIncidentPackage.TEMPORARY_SPEED_LIMIT: {
+ TemporarySpeedLimit temporarySpeedLimit = (TemporarySpeedLimit)theEObject;
+ T result = caseTemporarySpeedLimit(temporarySpeedLimit);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Traffic Incident</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Traffic Incident</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTrafficIncident(TrafficIncident object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Cause</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Cause</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCause(Cause object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Linked Cause</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Linked Cause</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLinkedCause(LinkedCause object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Direct Cause</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Direct Cause</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDirectCause(DirectCause object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Lane Restrictions</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Lane Restrictions</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLaneRestrictions(LaneRestrictions object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Advice</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Advice</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAdvice(Advice object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Applicability</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Applicability</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseApplicability(Applicability object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Vehicle Related Restriction</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Vehicle Related Restriction</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVehicleRelatedRestriction(VehicleRelatedRestriction object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Temporary Speed Limit Section</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Temporary Speed Limit Section</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTemporarySpeedLimitSection(TemporarySpeedLimitSection object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Temporary Speed Limit</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Temporary Speed Limit</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTemporarySpeedLimit(TemporarySpeedLimit object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //XTrafficIncidentSwitch