Bug 25242

Summary: Automatisches Mapping von ausgewählten Attributen ohne UDM-Handler.open() ermöglichen
Product: UCS Reporter: Alexander Kläser <klaeser>
Component: UDM (Generic)Assignee: Stefan Gohmann <gohmann>
Status: CLOSED FIXED QA Contact: Florian Best <best>
Severity: normal    
Priority: P4 CC: gohmann
Version: UCS 3.0Keywords: interim-2
Target Milestone: UCS 3.1   
Hardware: Other   
OS: Linux   
What kind of report is it?: --- What type of bug is this?: ---
Who will be affected by this bug?: --- How will those affected feel about the bug?: ---
User Pain: Enterprise Customer affected?:
School Customer affected?: ISV affected?:
Waiting Support: Flags outvoted (downgraded) after PO Review:
Ticket number: Bug group (optional):
Max CVSS v3 score:

Description Alexander Kläser univentionstaff 2011-12-06 18:27:52 CET
Derzeit wird bei der Suche nach IP-Adressen zwar eine Spalte "IP-Adresse" angezeigt, allerdings ist diese leer. Dies liegt wahrscheinlich daran, dass IP-Adressen ein Multi-Value-Feld ist.

Potentiell kann das auch in anderen Fällen auftreten, daher könnte die Lösung ein entsprechender JavaScript-Formatter sein, der Strings und Arrays handhaben kann.
Comment 1 Florian Best univentionstaff 2012-07-06 09:58:31 CEST
(In reply to comment #0)
> Derzeit wird bei der Suche nach IP-Adressen zwar eine Spalte "IP-Adresse"
> angezeigt, allerdings ist diese leer. Dies liegt wahrscheinlich daran, dass
> IP-Adressen ein Multi-Value-Feld ist.
> 
> Potentiell kann das auch in anderen Fällen auftreten, daher könnte die Lösung
> ein entsprechender JavaScript-Formatter sein, der Strings und Arrays handhaben
> kann.
Ein formatter wäre nur ein Teil der Lösung, dass generelle Probleme mit der Anzeige beheben würde.
Das eigentliche Problem ist aber, dass die Werte leer sind.
Die Filterung funktioniert.

{
  "status": 200,
  "message": null,
  "options": {
    "objectProperty": "ip",
    "container": "all",
    "objectPropertyValue": "*101",
    "objectType": "computers\/computer"
  },
  "result": [
    {
      "$dn$": "cn=slave,cn=dc,cn=computers,dc=ucs,dc=test",
      "name": "slave",
      "ip": [
        ""
      ],
      "$childs$": false,
      "labelObjectType": "Dom\u00e4nencontroller Slave",
      "path": "test.ucs:\/computers\/dc",
      "objectType": "computers\/domaincontroller_slave"
    }
  ]
}
Comment 2 Alexander Kläser univentionstaff 2012-07-06 11:08:03 CEST
Es wäre sinnvoll, diesen Bug generisch zu lösen. Das Problem ist, dass die IP-Adressen erst nach dem Aufruf von open() aus dem LDAP in das self.info-Dict übertragen werden. Dies macht bei komplizierteren Mappings auch durchaus Sinn. Sinnvoll wäre es daher, wenn einfache und wichtige (=häufig genutzte) Mappings direkt in self.info übertragen werden und nur die komplizierteren in open(). Dies könnte so umgesetzt werden, dass bei mapping.register() ein optionaler Parameter übergeben werden (bspw. directMapping=True), der diese Attribute markiert. Dadurch könnte man sich wahrscheinlich auch den Aufruf von open() an anderen Stellen ersparen.
Comment 3 Stefan Gohmann univentionstaff 2012-10-10 09:53:59 CEST
Es werden bereits alle Mappings, die per mapping.register() angegeben werden direkt im init durchgeführt. Die IP Adresse wird nicht per mapping.register übertragen, sondern wurde bislang im open von simpleComputer gemacht. Das habe ich jetzt ins __init__ von simpleComputer verschoben.

Damit wird die IP Adresse direkt angezeigt. Andere Attribute die per mapping.register registriert sind, beispielsweise die MAC Adresse oder die Beschreibung werden angezeigt.

Pakete bauen, ich prüfe gerade noch ob es Nebenwirkungen gibt oder ob weitere Felder fehlen.
Comment 4 Stefan Gohmann univentionstaff 2012-10-10 13:41:10 CEST
Tests soweit erfolgreich.
Comment 5 Florian Best univentionstaff 2012-10-17 08:46:22 CEST
OK, IP-Adresse wird angezeigt.

Weitere unwichitge Suchattribute werden an Bug #28803 aus der Suchliste gelöscht.

Changelog OK.
Comment 6 Stefan Gohmann univentionstaff 2012-12-12 21:10:02 CET
UCS 3.1-0 has been released: 
 http://forum.univention.de/viewtopic.php?f=54&t=2125

If this error occurs again, please use "Clone This Bug".