def get_next_id(self):
        try:
            query = {'_id': 'last_id'}
            update = {'$inc': {'id': 1}}
            fn = self.db.internal.find_and_modify
            row = fn(query, update, upsert=True, new=True)
        except Exception as e:
            raise DatabaseException(e)
        return row['id']
def __init__(self):
        self.supports_check_mode = True
        self.argument_spec = dict(
            accept_eula=dict(
                type='bool',
                default='no',
                choices=BOOLEANS
            ),
            base_key=dict(
                required=False,
                no_log=True
            ),
            name=dict(
                required=True
            ),
            state=dict(
                required=False,
                default='present',
                choices=['absent', 'present']
            )
        )
        self.f5_product_name = 'iworkflow'