Skip to content
DataMiner DoJo

More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Search in posts
Search in pages
Search in posts
Search in pages
Log in
Menu
  • Updates & Insights
  • Questions
  • Learning
    • E-learning Courses
    • Empower Replay: Limited Edition
    • Tutorials
    • Open Classroom Training
    • Certification
      • DataMiner Fundamentals
      • DataMiner Configurator
      • DataMiner Automation
      • Scripts & Connectors Developer: HTTP Basics
      • Scripts & Connectors Developer: SNMP Basics
      • Visual Overview – Level 1
      • Verify a certificate
    • Video Library
    • Books We Like
    • >> Go to DataMiner Docs
  • Expert Center
    • Solutions & Use Cases
      • Solutions
      • Use Case Library
    • Markets & Industries
      • Media production
      • Government & defense
      • Content distribution
      • Service providers
      • Partners
      • OSS/BSS
    • Agile
      • Agile Webspace
      • Everything Agile
        • The Agile Manifesto
        • Best Practices
        • Retro Recipes
      • Methodologies
        • The Scrum Framework
        • Kanban
        • Extreme Programming
      • Roles
        • The Product Owner
        • The Agile Coach
        • The Quality & UX Coach (QX)
    • DataMiner DevOps Professional Program
      • About the DevOps Program
      • DataMiner DevOps Support
  • Downloads
  • More
    • DataMiner Releases & Updates
    • Feature Suggestions
    • Climb the leaderboard!
    • Swag Shop
    • Contact
    • Global Feedback Survey
  • PARTNERS
    • All Partners
    • Technology Partners
    • Strategic Partner Program
    • Deal Registration
  • >> Go to dataminer.services

Automation – What is the most performant way to retrieve all elements for a certain protocol

Solved1.10K views1st September 2022Automation
0
Jens Vandewalle [SLC] [DevOps Enabler]9.44K 1st September 2022 0 Comments

Hi Dojo,

What is the most performant way to retrieve all elements for a certain protocol?

Engine

var elements = engine.FindElementsByProtocol(“protocol name”, “protocol version”);

Class Library

var dms = engine.GetDms();

var protocol = dms.GetProtocol(“protocol name”, “protocol version”);
var elements = dms.GetElements().Where(x => x.Protocol == protocol);

Jarno Lernou [SLC] [DevOps Enabler] Answered question 1st September 2022

2 Answers

  • Active
  • Voted
  • Newest
  • Oldest
2
Matthias Declerck [SLC] [DevOps Advocate]2.75K Posted 1st September 2022 0 Comments

HI Jens,

For now, I would say the Engine call.

Why? The class library could be made better.
proposed change 1: do not retrieve the protocol if you already have the input.

var dms = engine.GetDms();

var protocolName = “protocolName”;
var elements = dms.GetElements().Where(x => String.Equals(protocolName, x?.Name, StringComparison.InvariantCultureIgnoreCase);

proposed change 2:
pass filter in the GetElements() method, like an “predicate<Element> filter” or something. The result must be a list of Elements which matches the filter.
Leaving the filter empty/null results in having the full list of elements.

I do highly believe that if those 2 proposed changes are active on the field, then I would say to use the class library.

Hope this helps you further.

Jens Vandewalle [SLC] [DevOps Enabler] Selected answer as best 1st September 2022
3
Jarno Lernou [SLC] [DevOps Enabler]5.03K Posted 1st September 2022 0 Comments

Hi Jens, if performance is critical for you I would suggest using the engine.FindElementsByProtocol as it is using the GetLiteElementInfo SLNET Message in the background.

Right now, IDms is using multiple SLNET messages (GetInfo + GetElementByIDMessage) for this. Note that the GetProtocol call would also imply requesting more information than needed (GetProtocolMessage).

Kind Regards,
Jarno

Jarno Lernou [SLC] [DevOps Enabler] Answered question 1st September 2022
Please login to be able to comment or post an answer.

My DevOps rank

DevOps Members get more insights on their profile page.

My user earnings

0 Dojo credits

Spend your credits in our swag shop.

0 Reputation points

Boost your reputation, climb the leaderboard.

Promo banner DataMiner DevOps Professiona Program
DataMiner Integration Studio (DIS)
Empower Katas
Privacy Policy • Terms & Conditions • Contact

© 2025 Skyline Communications. All rights reserved.

DOJO Q&A widget

Can't find what you need?

? Explore the Q&A DataMiner Docs