ApplyDriver Version 5

Code in this section is saved in a file called ApplyDriverV5.java.

Concepts

In contrast to ApplyDriverV4, ApplyDriverV5 supports both local and remote AEs using NzaeApiGenerator. Job control and execution is the same as for the ApplyDriverV4 example.

Code

// ApplyDriverV5.java
// demonstrates Local and Remote AE using NzaeApiGenerator
package org.netezza.education;

import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
import org.netezza.ae.*;

public class ApplyDriverV5 {
    private static final Executor exec =
        Executors.newCachedThreadPool();
      
    public static final void main(String [] args) {
        NzaeApiGenerator helper = new NzaeApiGenerator();
 
        for (;;) {
            // accept an API type of data connection
            final NzaeApi api = helper.getApi(NzaeApi.ANY);
            if (!helper.isRemote()) {
                DataConnection.useApi(api);
                break;
            }
 
            Runnable task = new Runnable() {
                public void run() {
                    DataConnection.useApi(api);
                }
            };
            exec.execute(task);
        }
    }  
}