Nachdem ich die Benutzerverwaltung bereits vor einigen Tagen nahezu vollständig mit der SOAP Schnittstelle verheiratete, wurden jetzt noch diesbezüglich einige Lücken in der API geschlossen.
Zur ‘sauberen’ Trennung der Zugriffe auf Properties durch den internen Programmcodes und im Sinne eines gut handhabbaren API-Designs, wurde ein Session-Konzept eingeführt, das zusätzlich eine individuelle Filterung der Properties je Benutzer ermöglicht.
Im Prinzip hat sich für Nutzer der API kaum etwas geändert; neu ist ein bequemes ‘login’ für user, sowie die Notwendigkeit, sich vor Zugriff auf die meisten API-Methoden eine Instanz einer C7Session liefern zu lassen.
Beispiel Code vorher
package de.myApp.sample;
...
public static void main(String[] args) throws Exception {
// Initialization of C7
C7Manager.init("c7.prop"); // activates C7 - c7.prop is the file
// Create a property entry
C7Property firstProperty = new C7Property("firstKey", "firstValue"); // "firstKey" identifies the property
// "firstValue" is the parameter value
C7Manager.setProperty(firstProperty); // store Property
Beispiel Code aktuell
package de.myApp.sample;
...
public static void main(String[] args) throws Exception {
// Initialization of C7 and getting a session
C7Manager.init("c7.prop"); // activates C7 - c7.prop is the file
C7Session session = C7Manager.getSession(); // session for access to properties
// Create a property entry
C7Property firstProperty = new C7Property("firstKey", "firstValue"); // "firstKey" identifies the property
// "firstValue" is the parameter value
session.setProperty(firstProperty); // store Property
Also alles in allem für den Entwickler nur ein geringer Unterschied.
Allerdings hat er jetzt die Möglichkeit eines sehr komfortablen Zugriffs auf die Benutzerverwaltung. Beispiele dazu später hier im Blog und/oder auf einer Beispielseite