/** * {@inheritDoc} */ @Override public String toString() { return "JavaTrigger [library=" + library + ", className=" + className + ", collection=" + getCollection() + ", enabled=" + isEnabled() + ", actions=" + getActions().toString() + "]"; }
@Override public void write(ObjectDataOutput out, JavaTrigger xTrigger) throws IOException { super.writeTrigger(out, xTrigger); out.writeUTF(xTrigger.getLibrary()); out.writeUTF(xTrigger.getClassName()); }
@Override @SuppressWarnings("unchecked") public JavaTrigger read(ObjectDataInput in) throws IOException { Object[] fields = super.readTrigger(in); String library = in.readUTF(); String className = in.readUTF(); JavaTrigger xTrigger = new JavaTrigger((int) fields[0], (Date) fields[1], (String) fields[2], library, className, (Boolean) fields[3], (Boolean) fields[4], (String) fields[5]); xTrigger.setActions((Collection<TriggerAction>) fields[6]); return xTrigger; }
TriggerDefinition addTrigger(boolean java, String container, String implementation, boolean synchronous, String collection, java.util.Collection<TriggerAction> actions) { TriggerDefinition trigger; if (java) { trigger = new JavaTrigger(1, new Date(), getCurrentUser(), container, implementation, synchronous, true, collection); } else { trigger = new XQueryTrigger(1, new Date(), getCurrentUser(), container, implementation, synchronous, true, collection); } trigger.setActions(actions); Schema schema = getEntity(); if (schema.addTrigger(trigger)) { // store schema! flushEntity(schema); return trigger; } return null; }
private Trigger createJavaTrigger(JavaTrigger trigger) { Library library = getLibrary(trigger.getLibrary()); if (library == null) { logger.info("createJavaTrigger; not library found for name: {}, will lookup trigger implementation on classpath", trigger.getLibrary()); } else { if (!library.isEnabled()) { logger.info("createJavaTrigger; library {} disabled, trigger registration failed", trigger.getLibrary()); return null; tc = Class.forName(trigger.getClassName()); } catch (ClassNotFoundException ex) { if (library == null) { logger.info("createJavaTrigger; not trigger implementation found for Class: {}", trigger.getClassName()); } else { logger.debug("createJavaTrigger; ClassNotFound: {}, about to load library..", trigger.getClassName()); try { addURL(FileUtils.path2url(library.getFileName())); tc = Class.forName(trigger.getClassName()); introspectLibrary(library.getFileName()); } catch (ClassNotFoundException | IOException ex2) {