(Context context, EntityMessage message, boolean browsed, String html)
| 647 | } |
| 648 | |
| 649 | private boolean _execute(Context context, EntityMessage message, boolean browsed, String html) throws JSONException, IllegalArgumentException, IOException { |
| 650 | JSONObject jaction = new JSONObject(action); |
| 651 | int type = jaction.getInt("type"); |
| 652 | EntityLog.log(context, EntityLog.Type.Rules, message, |
| 653 | "Executing rule=" + type + ":" + this.name + "@" + this.order); |
| 654 | |
| 655 | switch (type) { |
| 656 | case TYPE_NOOP: |
| 657 | return false; |
| 658 | case TYPE_SEEN: |
| 659 | return onActionSeen(context, message, true); |
| 660 | case TYPE_UNSEEN: |
| 661 | return onActionSeen(context, message, false); |
| 662 | case TYPE_HIDE: |
| 663 | return onActionHide(context, message, jaction); |
| 664 | case TYPE_IGNORE: |
| 665 | return onActionIgnore(context, message, jaction); |
| 666 | case TYPE_SNOOZE: |
| 667 | return onActionSnooze(context, message, jaction); |
| 668 | case TYPE_FLAG: |
| 669 | return onActionFlag(context, message, jaction); |
| 670 | case TYPE_IMPORTANCE: |
| 671 | return onActionImportance(context, message, jaction); |
| 672 | case TYPE_KEYWORD: |
| 673 | return onActionKeyword(context, message, jaction); |
| 674 | case TYPE_MOVE: |
| 675 | return onActionMove(context, message, jaction); |
| 676 | case TYPE_COPY: |
| 677 | return onActionCopy(context, message, jaction); |
| 678 | case TYPE_ANSWER: |
| 679 | return onActionAnswer(context, message, browsed, jaction); |
| 680 | case TYPE_TTS: |
| 681 | return onActionTts(context, message, browsed, jaction); |
| 682 | case TYPE_AUTOMATION: |
| 683 | return onActionAutomation(context, message, jaction, html); |
| 684 | case TYPE_DELETE: |
| 685 | return onActionDelete(context, message, jaction); |
| 686 | case TYPE_SOUND: |
| 687 | return onActionSound(context, message, browsed, jaction); |
| 688 | case TYPE_LOCAL_ONLY: |
| 689 | return onActionLocalOnly(context, message, jaction); |
| 690 | case TYPE_NOTES: |
| 691 | return onActionNotes(context, message, jaction, html); |
| 692 | case TYPE_URL: |
| 693 | return onActionUrl(context, message, jaction, html); |
| 694 | case TYPE_SILENT: |
| 695 | return onActionSilent(context, message, jaction); |
| 696 | case TYPE_SUMMARIZE: |
| 697 | return onActionSummarize(context, message, browsed, jaction); |
| 698 | default: |
| 699 | throw new IllegalArgumentException("Unknown rule type=" + type + " name=" + name); |
| 700 | } |
| 701 | } |
| 702 | |
| 703 | void validate(Context context) throws JSONException, IllegalArgumentException { |
| 704 | try { |
no test coverage detected