package com.inari.firefly.action;

import com.inari.commons.lang.indexed.IndexedTypeKey;
import com.inari.firefly.system.FFContextInitiable;
import com.inari.firefly.system.component.SystemComponent;

public abstract class Action extends SystemComponent implements FFContextInitiable {
    
    public static final SystemComponentKey<Action> TYPE_KEY = SystemComponentKey.create( Action.class );

    protected Action( int id ) {
        super( id );
    }

    @Override
    public final IndexedTypeKey indexedTypeKey() {
        return TYPE_KEY;
    }

    @Override
    public final Class<Action> indexedObjectType() {
        return Action.class;
    }
    
    public abstract void performAction( int entityId );
}

@@ -550,111 +550,8 @@
    %7D
-%0A%0A    @Override%0A    public final Class%3CAction%3E indexedObjectType() %7B%0A        return Action.class;%0A    %7D
 %0A   

handle types better