Search in sources :

Example 6 with Keyword

use of clojure.lang.Keyword in project jstorm by alibaba.

the class ClojureBolt method prepare.

@Override
public void prepare(final Map stormConf, final TopologyContext context, final OutputCollector collector) {
    IFn hof = Utils.loadClojureFn(_fnSpec.get(0), _fnSpec.get(1));
    try {
        IFn preparer = (IFn) hof.applyTo(RT.seq(_params));
        final Map<Keyword, Object> collectorMap = new PersistentArrayMap(new Object[] { Keyword.intern(Symbol.create("output-collector")), collector, Keyword.intern(Symbol.create("context")), context });
        List<Object> args = new ArrayList<Object>() {

            {
                add(stormConf);
                add(context);
                add(collectorMap);
            }
        };
        _bolt = (IBolt) preparer.applyTo(RT.seq(args));
        // this is kind of unnecessary for clojure
        try {
            _bolt.prepare(stormConf, context, collector);
        } catch (AbstractMethodError ame) {
        }
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
Also used : IFn(clojure.lang.IFn) PersistentArrayMap(clojure.lang.PersistentArrayMap) Keyword(clojure.lang.Keyword) ArrayList(java.util.ArrayList)

Example 7 with Keyword

use of clojure.lang.Keyword in project jstorm by alibaba.

the class ClojureSpout method open.

@Override
public void open(final Map conf, final TopologyContext context, final SpoutOutputCollector collector) {
    IFn hof = Utils.loadClojureFn(_fnSpec.get(0), _fnSpec.get(1));
    try {
        IFn preparer = (IFn) hof.applyTo(RT.seq(_params));
        final Map<Keyword, Object> collectorMap = new PersistentArrayMap(new Object[] { Keyword.intern(Symbol.create("output-collector")), collector, Keyword.intern(Symbol.create("context")), context });
        List<Object> args = new ArrayList<Object>() {

            {
                add(conf);
                add(context);
                add(collectorMap);
            }
        };
        _spout = (ISpout) preparer.applyTo(RT.seq(args));
        // this is kind of unnecessary for clojure
        try {
            _spout.open(conf, context, collector);
        } catch (AbstractMethodError ame) {
        }
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
Also used : IFn(clojure.lang.IFn) PersistentArrayMap(clojure.lang.PersistentArrayMap) Keyword(clojure.lang.Keyword) ArrayList(java.util.ArrayList)

Example 8 with Keyword

use of clojure.lang.Keyword in project storm by apache.

the class ClojureBolt method prepare.

@Override
public void prepare(final Map stormConf, final TopologyContext context, final OutputCollector collector) {
    IFn hof = Utils.loadClojureFn(_fnSpec.get(0), _fnSpec.get(1));
    try {
        IFn preparer = (IFn) hof.applyTo(RT.seq(_params));
        final Map<Keyword, Object> collectorMap = new PersistentArrayMap(new Object[] { Keyword.intern(Symbol.create("output-collector")), collector, Keyword.intern(Symbol.create("context")), context });
        List<Object> args = new ArrayList<Object>() {

            {
                add(stormConf);
                add(context);
                add(collectorMap);
            }
        };
        _bolt = (IBolt) preparer.applyTo(RT.seq(args));
        //this is kind of unnecessary for clojure
        try {
            _bolt.prepare(stormConf, context, collector);
        } catch (AbstractMethodError ame) {
        }
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
Also used : IFn(clojure.lang.IFn) PersistentArrayMap(clojure.lang.PersistentArrayMap) Keyword(clojure.lang.Keyword) ArrayList(java.util.ArrayList)

Example 9 with Keyword

use of clojure.lang.Keyword in project storm by apache.

the class ClojureSpout method open.

@Override
public void open(final Map conf, final TopologyContext context, final SpoutOutputCollector collector) {
    IFn hof = Utils.loadClojureFn(_fnSpec.get(0), _fnSpec.get(1));
    try {
        IFn preparer = (IFn) hof.applyTo(RT.seq(_params));
        final Map<Keyword, Object> collectorMap = new PersistentArrayMap(new Object[] { Keyword.intern(Symbol.create("output-collector")), collector, Keyword.intern(Symbol.create("context")), context });
        List<Object> args = new ArrayList<Object>() {

            {
                add(conf);
                add(context);
                add(collectorMap);
            }
        };
        _spout = (ISpout) preparer.applyTo(RT.seq(args));
        //this is kind of unnecessary for clojure
        try {
            _spout.open(conf, context, collector);
        } catch (AbstractMethodError ame) {
        }
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
Also used : IFn(clojure.lang.IFn) PersistentArrayMap(clojure.lang.PersistentArrayMap) Keyword(clojure.lang.Keyword) ArrayList(java.util.ArrayList)

Example 10 with Keyword

use of clojure.lang.Keyword in project fluxgraph by datablend.

the class FluxElement method getPropertyKeys.

@Override
public Set<String> getPropertyKeys() {
    if (isDeleted()) {
        throw new IllegalArgumentException("It is not possible to get properties on a deleted element");
    }
    Set<String> finalproperties = new HashSet<String>();
    Set properties = getDatabase().entity(id).keySet();
    Iterator<Keyword> propertiesit = properties.iterator();
    while (propertiesit.hasNext()) {
        Keyword property = propertiesit.next();
        if (!FluxUtil.isReservedKey(property.toString())) {
            finalproperties.add(FluxUtil.getPropertyName(property));
        }
    }
    return finalproperties;
}
Also used : Keyword(clojure.lang.Keyword)

Aggregations

Keyword (clojure.lang.Keyword)14 ArrayList (java.util.ArrayList)7 IFn (clojure.lang.IFn)6 PersistentArrayMap (clojure.lang.PersistentArrayMap)6 Map (java.util.Map)3 ByteBuffer (java.nio.ByteBuffer)2 HeaderMap (org.httpkit.HeaderMap)2 Entity (datomic.Entity)1 HashMap (java.util.HashMap)1 List (java.util.List)1 Entry (java.util.Map.Entry)1 TreeMap (java.util.TreeMap)1 JarEntry (java.util.jar.JarEntry)1 ZipEntry (java.util.zip.ZipEntry)1 TarArchiveEntry (org.apache.commons.compress.archivers.tar.TarArchiveEntry)1 ComponentObject (org.apache.storm.generated.ComponentObject)1