package fr.adrienbrault.idea.symfony2plugin.stubs.dict;

import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

import java.io.Serializable;

/**
 * @author Daniel Espendiller <daniel@espendiller.net>
 */
public class DispatcherEvent implements Serializable {

    @Nullable
    private String fqn;

    @Nullable
    private String instance;

    public DispatcherEvent() {
    }

    public DispatcherEvent(@NotNull String fqn, @Nullable String instance) {
        this.fqn = fqn;
        this.instance = instance;
    }

    @Nullable
    public String getFqn() {
        return fqn;
    }

    @Nullable
    public String getInstance() {
        return instance;
    }
}

@@ -50,16 +50,144 @@
 .dict;%0A%0A
+import fr.adrienbrault.idea.symfony2plugin.routing.dict.RouteInterface;%0Aimport org.apache.commons.lang.builder.HashCodeBuilder;%0A
 import o
@@ -220,16 +220,16 @@
 otNull;%0A
-
 import o
@@ -292,16 +292,68 @@
 lizable;
+%0Aimport java.util.HashSet;%0Aimport java.util.Objects;
 %0A%0A/**%0A *
@@ -842,24 +842,24 @@
 nstance() %7B%0A
-
         retu
@@ -877,10 +877,463 @@
 ;%0A    %7D%0A
+%0A%0A    @Override%0A    public int hashCode() %7B%0A        return new HashCodeBuilder()%0A            .append(this.fqn)%0A            .append(this.instance)%0A            .toHashCode()%0A        ;%0A    %7D%0A%0A    @Override%0A    public boolean equals(Object obj) %7B%0A        return obj instanceof DispatcherEvent &&%0A            Objects.equals(((DispatcherEvent) obj).fqn, this.fqn) &&%0A            Objects.equals(((DispatcherEvent) obj).instance, this.instance)%0A        ;%0A    %7D%0A
 %7D%0A

fix equals / hashCode violation for event dispatcher index #737