Device.getPromoterReactions C# (CSharp) Méthode

getPromoterReactions() private méthode

private getPromoterReactions ( ) : LinkedList
Résultat LinkedList
    private LinkedList<PromoterProperties> getPromoterReactions()
    {
        Logger.Log("Device::getPromoterReactions() starting... device="+this, Logger.Level.TRACE);

        //cf issue #224
        //previously:
        //LinkedList<ExpressionModule> modules = new LinkedList<ExpressionModule>(_modules);
        //caused early deletion problem
        LinkedList<ExpressionModule> modules = new LinkedList<ExpressionModule>();
        foreach(ExpressionModule module in _modules)
        {
            modules.AddLast(new ExpressionModule(module));
        }

        LinkedList<PromoterProperties> reactions = new LinkedList<PromoterProperties>();
        PromoterProperties reaction;
        Logger.Log("Device::getPromoterReactions() built #modules="+modules.Count+" and #reactions="+reactions.Count, Logger.Level.TRACE);

        foreach (ExpressionModule em in modules)
        {
            Logger.Log("Device::getPromoterReactions() analyzing em="+em, Logger.Level.TRACE);
            reaction = getPromoterReaction(em, em.GetHashCode());
            if (reaction != null)
                reactions.AddLast(reaction);
        }
        if (reactions.Count == 0)
            return null;
        return reactions;
    }