Novell Home

Removing Values from the Network Address Field

Novell Cool Solutions: Tip
By Lothar Haeger

Digg This - Slashdot This

Posted: 30 May 2007
 

Problem

A Forum reader recently asked:

"The "Network Address" field is usually cleared of the previous value, but it is not reliably removed. I'm thinking about using the WorkOrder driver to schedule a <remove-all-values/> for that particular attribute to happen some number of hours after they log in. I was thinking it'd be better if I could schedule it for some number of minutes or hours after they log out."

And here's the response from Lothar Haeger ...

Solution

Have you tried running a regular query for network addresses that have an attribute value timestamp older than xxx hours? You could use something like this:

<do-set-local-variable name="ExpireBefore" scope="policy">
  <arg-string>
    <token-xpath expression="round(jdate:getTime(jdate:new()) div 1000)-~GracePeriod~"/>
  </arg-string>
</do-set-local-variable>
<do-for-each>
  <arg-node-set>
    <token-xpath expression='query:search($srcQueryProcessor, "~WksSearchScope~","","~WksSearchBase~","Workstation","Network Address","*","Network Address")[attr[@attr-name="Network Address"]/value/@timestamp<$ExpireBefore]'/>
  </arg-node-set>
  <arg-actions>
    <do-clear-src-attr-value name="Network Address">
      <arg-dn>
        <token-xpath expression="$current-node/@src-dn"/>
      </arg-dn>
    </do-clear-src-attr-value>
  </arg-actions>
</do-for-each>


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell