public Object execute() throws Exception { Rule rule = rulesService.getRule(ruleIdentifier); if (rule == null) { System.out.println("Couldn't find a rule with id=" + ruleIdentifier); return null; } String jsonRule = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(rule); System.out.println(jsonRule); return null; } }
public Object execute() throws Exception { ConditionType conditionType = definitionsService.getConditionType(conditionTypeIdentifier); if (conditionType == null) { System.out.println("Couldn't find an action with id=" + conditionTypeIdentifier); return null; } String jsonRule = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(conditionType); System.out.println(jsonRule); return null; }
public Object execute() throws Exception { ActionType actionType = definitionsService.getActionType(actionTypeIdentifier); if (actionType == null) { System.out.println("Couldn't find an action with id=" + actionTypeIdentifier); return null; } String jsonRule = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(actionType); System.out.println(jsonRule); return null; } }
@Override protected Object doExecute() throws Exception { ActionType actionType = definitionsService.getActionType(actionTypeIdentifier); if (actionType == null) { System.out.println("Couldn't find an action with id=" + actionTypeIdentifier); return null; } String jsonRule = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(actionType); System.out.println(jsonRule); return null; } }
@Override protected Object doExecute() throws Exception { Rule rule = rulesService.getRule(ruleIdentifier); if (rule == null) { System.out.println("Couldn't find a rule with id=" + ruleIdentifier); return null; } String jsonRule = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(rule); System.out.println(jsonRule); return null; } }
public Object execute() throws Exception { Profile profile = profileService.load(profileIdentifier); if (profile == null) { System.out.println("Couldn't find a profile with id=" + profileIdentifier); return null; } String jsonProfile = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(profile); System.out.println(jsonProfile); return null; } }
@Override protected Object doExecute() throws Exception { Segment segment = segmentService.getSegmentDefinition(segmentIdentifier); if (segment == null) { System.out.println("Couldn't find an action with id=" + segmentIdentifier); return null; } String jsonRule = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(segment); System.out.println(jsonRule); return null; } }
public Object execute() throws Exception { Session session = profileService.loadSession(sessionIdentifier, null); if (session == null) { System.out.println("Couldn't find a session with id=" + sessionIdentifier); return null; } String jsonSession = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(session); System.out.println(jsonSession); return null; } }
public Object execute() throws Exception { Segment segment = segmentService.getSegmentDefinition(segmentIdentifier); if (segment == null) { System.out.println("Couldn't find an action with id=" + segmentIdentifier); return null; } String jsonRule = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(segment); System.out.println(jsonRule); return null; } }
public String getGeneratedPropertyKey(Condition condition, Condition parentCondition) { try { Map<String, Object> m = new HashMap<>(); m.put("condition", condition); m.put("numberOfDays", parentCondition.getParameter("numberOfDays")); String key = CustomObjectMapper.getObjectMapper().writeValueAsString(m); return "eventTriggered" + getMD5(key); } catch (JsonProcessingException e) { logger.error("Cannot generate key",e); return null; } }
/** * Retrieves an export of profiles matching the specified query as a downloadable file using the comma-separated values (CSV) format. * * @param query a String JSON representation of the query the profiles to export should match * @return a Response object configured to allow caller to download the CSV export file */ @GET @Path("/export") @Produces("text/csv") public Response getExportProfiles(@QueryParam("query") String query) { try { return exportProfiles(CustomObjectMapper.getObjectMapper().readValue(query, Query.class)); } catch (IOException e) { logger.error(e.getMessage(), e); return Response.serverError().build(); } }
/** * A version of {@link #getExportProfiles(String)} suitable to be called from an HTML form. * * @param query a form-encoded representation of the query the profiles to export should match * @return a Response object configured to allow caller to download the CSV export file */ @GET @Path("/export") @Produces("text/csv") @Consumes(MediaType.APPLICATION_FORM_URLENCODED) public Response formExportProfiles(@FormParam("query") String query) { try { return exportProfiles(CustomObjectMapper.getObjectMapper().readValue(query, Query.class)); } catch (IOException e) { logger.error(e.getMessage(), e); return Response.serverError().build(); } }
private void loadPredefinedPropertyMergeStrategies(BundleContext bundleContext) { Enumeration<URL> predefinedPropertyMergeStrategyEntries = bundleContext.getBundle().findEntries("META-INF/cxs/mergers", "*.json", true); if (predefinedPropertyMergeStrategyEntries == null) { return; } ArrayList<PluginType> pluginTypeArrayList = (ArrayList<PluginType>) pluginTypes.get(bundleContext.getBundle().getBundleId()); while (predefinedPropertyMergeStrategyEntries.hasMoreElements()) { URL predefinedPropertyMergeStrategyURL = predefinedPropertyMergeStrategyEntries.nextElement(); logger.debug("Found predefined property merge strategy type at " + predefinedPropertyMergeStrategyURL + ", loading... "); try { PropertyMergeStrategyType propertyMergeStrategyType = CustomObjectMapper.getObjectMapper().readValue(predefinedPropertyMergeStrategyURL, PropertyMergeStrategyType.class); propertyMergeStrategyType.setPluginId(bundleContext.getBundle().getBundleId()); propertyMergeStrategyTypeById.put(propertyMergeStrategyType.getId(), propertyMergeStrategyType); pluginTypeArrayList.add(propertyMergeStrategyType); } catch (Exception e) { logger.error("Error while loading property type definition " + predefinedPropertyMergeStrategyURL, e); } } }
private void loadPredefinedPropertyMergeStrategies(BundleContext bundleContext) { Enumeration<URL> predefinedPropertyMergeStrategyEntries = bundleContext.getBundle().findEntries("META-INF/cxs/mergers", "*.json", true); if (predefinedPropertyMergeStrategyEntries == null) { return; } ArrayList<PluginType> pluginTypeArrayList = (ArrayList<PluginType>) pluginTypes.get(bundleContext.getBundle().getBundleId()); while (predefinedPropertyMergeStrategyEntries.hasMoreElements()) { URL predefinedPropertyMergeStrategyURL = predefinedPropertyMergeStrategyEntries.nextElement(); logger.debug("Found predefined property merge strategy type at " + predefinedPropertyMergeStrategyURL + ", loading... "); try { PropertyMergeStrategyType propertyMergeStrategyType = CustomObjectMapper.getObjectMapper().readValue(predefinedPropertyMergeStrategyURL, PropertyMergeStrategyType.class); propertyMergeStrategyType.setPluginId(bundleContext.getBundle().getBundleId()); propertyMergeStrategyTypeById.put(propertyMergeStrategyType.getId(), propertyMergeStrategyType); pluginTypeArrayList.add(propertyMergeStrategyType); } catch (Exception e) { logger.error("Error while loading property type definition " + predefinedPropertyMergeStrategyURL, e); } } }
@Override protected Object doExecute() throws Exception { Metric metric = metricsService.getMetrics().get(metricName); if (metric == null) { System.out.println("Couldn't find a metric with name=" + metricName); return null; } // by default pretty printer will use spaces between array values, we change this to linefeeds to make // the caller values easier to read. DefaultPrettyPrinter defaultPrettyPrinter = new DefaultPrettyPrinter(); defaultPrettyPrinter = defaultPrettyPrinter.withArrayIndenter(DefaultIndenter.SYSTEM_LINEFEED_INSTANCE); String jsonMetric = CustomObjectMapper.getObjectMapper().writer(defaultPrettyPrinter).writeValueAsString(metric); System.out.println(jsonMetric); return null; } }
@Override protected Object doExecute() throws Exception { Metric metric = metricsService.getMetrics().get(metricName); if (metric == null) { System.out.println("Couldn't find a metric with name=" + metricName); return null; } // by default pretty printer will use spaces between array values, we change this to linefeeds to make // the caller values easier to read. DefaultPrettyPrinter defaultPrettyPrinter = new DefaultPrettyPrinter(); defaultPrettyPrinter = defaultPrettyPrinter.withArrayIndenter(DefaultIndenter.SYSTEM_LINEFEED_INSTANCE); String jsonMetric = CustomObjectMapper.getObjectMapper().writer(defaultPrettyPrinter).writeValueAsString(metric); System.out.println(jsonMetric); return null; } }
private void loadPredefinedActionTypes(BundleContext bundleContext) { Enumeration<URL> predefinedActionsEntries = bundleContext.getBundle().findEntries("META-INF/cxs/actions", "*.json", true); if (predefinedActionsEntries == null) { return; } ArrayList<PluginType> pluginTypeArrayList = (ArrayList<PluginType>) pluginTypes.get(bundleContext.getBundle().getBundleId()); while (predefinedActionsEntries.hasMoreElements()) { URL predefinedActionURL = predefinedActionsEntries.nextElement(); logger.debug("Found predefined action at " + predefinedActionURL + ", loading... "); try { ActionType actionType = CustomObjectMapper.getObjectMapper().readValue(predefinedActionURL, ActionType.class); // Register only if action type does not exist yet if (getActionType(actionType.getMetadata().getId()) == null || bundleContext.getBundle().getVersion().toString().contains("SNAPSHOT")) { setActionType(actionType); logger.info("Predefined action type with id {} registered", actionType.getMetadata().getId()); } else { logger.info("The predefined action type with id {} is already registered, this action type will be skipped", actionType.getMetadata().getId()); } } catch (Exception e) { logger.error("Error while loading action definition " + predefinedActionURL, e); } } }
private void loadPredefinedRules(BundleContext bundleContext) { Enumeration<URL> predefinedRuleEntries = bundleContext.getBundle().findEntries("META-INF/cxs/rules", "*.json", true); if (predefinedRuleEntries == null) { return; } while (predefinedRuleEntries.hasMoreElements()) { URL predefinedRuleURL = predefinedRuleEntries.nextElement(); logger.debug("Found predefined rule at " + predefinedRuleURL + ", loading... "); try { Rule rule = CustomObjectMapper.getObjectMapper().readValue(predefinedRuleURL, Rule.class); // Register only if rule does not exist yet if (getRule(rule.getMetadata().getId()) == null) { setRule(rule); logger.info("Predefined rule with id {} registered", rule.getMetadata().getId()); } else { logger.info("The predefined rule with id {} is already registered, this rule will be skipped", rule.getMetadata().getId()); } } catch (IOException e) { logger.error("Error while loading rule definition " + predefinedRuleURL, e); } } }
private void loadPredefinedSegments(BundleContext bundleContext) { Enumeration<URL> predefinedSegmentEntries = bundleContext.getBundle().findEntries("META-INF/cxs/segments", "*.json", true); if (predefinedSegmentEntries == null) { return; } while (predefinedSegmentEntries.hasMoreElements()) { URL predefinedSegmentURL = predefinedSegmentEntries.nextElement(); logger.debug("Found predefined segment at " + predefinedSegmentURL + ", loading... "); try { Segment segment = CustomObjectMapper.getObjectMapper().readValue(predefinedSegmentURL, Segment.class); if (segment.getMetadata().getScope() == null) { segment.getMetadata().setScope("systemscope"); } // Register only if segment does not exist yet if (getSegmentDefinition(segment.getMetadata().getId()) == null || bundleContext.getBundle().getVersion().toString().contains("SNAPSHOT")) { setSegmentDefinition(segment); logger.info("Predefined segment with id {} registered", segment.getMetadata().getId()); } else { logger.info("The predefined segment with id {} is already registered, this segment will be skipped", segment.getMetadata().getId()); } } catch (IOException e) { logger.error("Error while loading segment definition " + predefinedSegmentURL, e); } } }
public Object execute() throws Exception { Condition eventCondition = new Condition(definitionsService.getConditionType("eventPropertyCondition")); eventCondition.setParameter("propertyName", "itemId"); eventCondition.setParameter("comparisonOperator", "equals"); eventCondition.setParameter("propertyValue", eventIdentifier); PartialList<Event> matchingEvents = eventService.searchEvents(eventCondition, 0, 10); if (matchingEvents == null || matchingEvents.getTotalSize() != 1) { System.out.println("Couldn't find a single event with id=" + eventIdentifier + ". Maybe it wasn't a persistent event ?"); return null; } String jsonEvent = CustomObjectMapper.getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(matchingEvents.get(0)); System.out.println(jsonEvent); return null; } }