As promised, I am now making my ILM_Scheduler service source code available for download. In brief, the notion is to optimise ILM/MIIS scheduling through the use of a queue. You add jobs to the queue and they are executed, one at a time, and in order of priority. You can schedule a job by adding…
Category: VB.NET
Uniqueness check against the Metaverse
ILM works on a single object at a time, so it can be a little tricky if you want to make a decision based on other objects in your metaverse. It is, however, perfectly possible (though, I believe, officially discouraged) to run SQL queries against the metaverse table from your extension code.
Debugging your extension code from Visual Studio
Extension code cannot run standalone, but only within ILM. To debug the code you must first attach Visual Studio to the miiserver process.
Getting Started with Provisioning
I’m now at the point, in this series of posts for ILM-newbies, where I can start to look at provisioning code.
Advanced Attribute Flow Rules
Today I will introduce the simplest coding element in ILM – advanced attribute flows. Direct attribute flows can be done with no code, but they’re not all that interesting – all you can do is flow one value directly to another, or apply a constant value. To manipulate values, or to use the values of…
An introduction to ILM coding
While writing this series of newbie posts I have, on a few occasions now, had to stop half-way through a post because I’ve realised that something else needs to be explained first. I’m at the point now where I can’t go any further without introducing the topic of writing code. I have spoken to several…
Should you ever run external processes from extension code?
I had an interesting chat with an ILM collegue the other day, and one of the topics that came up was whether you should ever, under any circumstances, call external processes from extension code. The prohibition on calling external processes from provisioning (MVExtension) code is clear and well accepted (see the Calling External Processes section…
An XMA to Create Apache Websites
Once you get the hang of Extensible MAs a whole world of possibilities opens up. If you’re trying to achieve something that is related to Identity in some way, and it’s scriptable, then you can do it with an XMA. One such example I came across, in a university environment, was personal websites. Certain users…
Keep Provisioning Logic out of the Provisioning Code
Early on in my MIIS project I had a consultant in to give me some pointers. He showed me how to create two functions ShouldObjectExist and ReadyForCreation at the top of my MVExtensions, and use them to control provisioning. Private Function ShouldObjectExist(ByVal mventry As MVEntry) As Boolean << Evaluate mventry to determine if CS object…