---
name: "CipUX::Object::Action::List"
section: "3pm"
platform: "linux"
package: "libcipux-object-perl"
version: "3.4.0.5-2.1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/CipUX::Object::Action::List"
---

# CipUX::Object::Action::List(3pm)

Object layer class for CipUX

## NAME

CipUX::Object::Action::List - Object layer class for CipUX

## VERSION

version 3.4.0.5

## SYNOPSIS

```
  use CipUX::Object::Action::List;
```

## DESCRIPTION

Provides the functions cipux\_object\_create and cipux\_object\_destroy as well as some auto-calculated values for example for userPassword.

## ABSTRACT

The CipUX object layer is a generic abstract class, which can be used by other classes or scripts.

The function cipux\_object\_create may create one or several LDAP nodes according to the configuration structure in /etc/cipux/cipux-object.conf or ~/.cipux/cipux-object.conf.

The function cipux\_object\_destroy tries to remove one or more LDAP nodes.

## SUBROUTINES/METHODS

The following functions will be exported by CipUX::Object::Action::List.

### new

Constructor

**Syntax:**

```
  my $cipux_object = CipUX::Object::Action::List->new({});
  my $cipux_object = CipUX::Object::Action::List->new({debug=>1});
  my $cfg = '/etc/cipux/cipux-object.conf';
  my $cipux_object = CipUX::Object::Action::List->new({cfg=>$cfg});
```

**Description:**

*cfg*

Configuration files may be provided for convenience. This is meant to work in a single-server scenario and multi-server settings.

The preset behavior is to throw an exception, when some parameter value of the configuration file is missing or is wrong.

Summary:

```
 * if a configuration file is given
      incorporate this file if it is there
   else
      look for ~/.cipux/cipux-object.conf and incorporate if it is there
   else
      look for /etc/cipux/cipux-object.conf and incorporate if it is there
```

**/etc/cipux/cipux-object.conf**

The configuration file is for dispatching multiple CipUX objects.

TODO: write conf structure!

For details see man page of cipux-object.conf.

### DESTROY

Mandatory DESTROY Method for Inside-Out Class.

**Syntax:**

```
   $i10n->DESTROY();
```

### list\_type

Creates a CipUX object

**Syntax:**

```
 $object->list_type({
                              });
```

### preset

Creates a CipUX object

**Syntax:**

```
 $object->preset({
                              });
```

### auto

Creates a CipUX object

**Syntax:**

```
 $object->auto({
                              });
```

### mandatory

Creates a CipUX object

**Syntax:**

```
 $object->mandatory({
                              });
```

### rule

Creates a CipUX object

**Syntax:**

```
 $object->rule({
                              });
```

### alias

Creates a CipUX object

**Syntax:**

```
 $object->alias({
                              });
```

### list\_object\_action

TODO

### preset\_auto\_mandatory\_rule\_alias

Creates a CipUX object

**Syntax:**

```
 $object->preset_auto_mandatory_rule_alias({
```

});

### oid\_number\_supremum

TODO

### object

TODO

### test\_cfg

TODO

### DEMOLISH

TODO

### config

TODO

## DIAGNOSTICS

TODO

## CONFIGURATION AND ENVIRONMENT

TODO

## DEPENDENCIES

Carp Class:Std CipUX CipUX::Storage Pod::Usage Date::Manip

## INCOMPATIBILITIES

Not known.

## BUGS AND LIMITATIONS

Not known.

## SEE ALSO

See the CipUX web page and the manual at \<http://www.cipux.org\>

See the mailing list \<http://sympa.cipworx.org/wws/info/cipux-devel\>

## AUTHOR

Christian Kuelker  \<christian.kuelker@cipworx.org\>

## LICENSE AND COPYRIGHT

Copyright (C) 2007 - 2009 by Christian Kuelker

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
