diff --git a/Core/src/org/sleuthkit/autopsy/actions/Bundle.properties b/Core/src/org/sleuthkit/autopsy/actions/Bundle.properties index 832079a515..d9cc839467 100755 --- a/Core/src/org/sleuthkit/autopsy/actions/Bundle.properties +++ b/Core/src/org/sleuthkit/autopsy/actions/Bundle.properties @@ -52,7 +52,7 @@ OpenLogFolder.error1=Log File Not Found: {0} OpenLogFolder.CouldNotOpenLogFolder=Could not open log folder CTL_OpenLogFolder=Open Log Folder CTL_OpenOutputFolder=Open Output Folder -OpenOutputFolder.error1=Output Folder Not Found: {0} +OpenOutputFolder.error1=Output Folder Not Found\: {0} OpenOutputFolder.noCaseOpen=No open case, therefore no current output folder available. OpenOutputFolder.CouldNotOpenOutputFolder=Could not open output folder ShowIngestProgressSnapshotAction.actionName.text=Get Ingest Progress Snapshot diff --git a/Core/src/org/sleuthkit/autopsy/actions/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/actions/Bundle_ja.properties index 480522e021..28b9af065b 100644 --- a/Core/src/org/sleuthkit/autopsy/actions/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/actions/Bundle_ja.properties @@ -5,7 +5,7 @@ GetTagNameDialog.newTagPanel.border.title=\u65B0\u898F\u30BF\u30B0 GetTagNameDialog.tagNameLabel.text=\u30BF\u30B0\u540D\uFF1A GetTagNameAndCommentDialog.newTagButton.text=\u65B0\u898F\u30BF\u30B0 GetTagNameAndCommentDialog.okButton.text=OK -GetTagNameAndCommentDialog.commentText.toolTipText=\u30BF\u30B0\u306E\u30B3\u30E1\u30F3\u30C8\u3092\u5165\u529B\u307E\u305F\u306F\u7A7A\u6B04\u306B\u3057\u3066\u304F\u3060\u3055\u3044 +GetTagNameAndCommentDialog.commentText.toolTipText=\u30BF\u30B0\u306E\u30AA\u30D7\u30B7\u30E7\u30CA\u30EB\u306E\u30B3\u30E1\u30F3\u30C8\u3092\u5165\u529B\u307E\u305F\u306F\u7A7A\u6B04\u306B\u3057\u3066\u304F\u3060\u3055\u3044 GetTagNameAndCommentDialog.commentLabel.text=\u30B3\u30E1\u30F3\u30C8\uFF1A GetTagNameAndCommentDialog.cancelButton.text=\u30AD\u30E3\u30F3\u30BB\u30EB GetTagNameAndCommentDialog.tagCombo.toolTipText=\u4F7F\u7528\u3059\u308B\u30BF\u30B0\u3092\u9078\u629E @@ -28,7 +28,7 @@ DeleteBlackboardArtifactTagAction.unableToDelTag.msg=\u30BF\u30B0{0}\u3092\u524A DeleteBlackboardArtifactTagAction.tagDelErr=\u30BF\u30B0\u524A\u9664\u30A8\u30E9\u30FC DeleteContentTagAction.deleteTags=\u30BF\u30B0\u3092\u524A\u9664 DeleteContentTagAction.unableToDelTag.msg=\u30BF\u30B0{0}\u3092\u524A\u9664\u3067\u304D\u307E\u305B\u3093\u3002 -DeleteContentTagAction.tagDelErr=\u30BF\u30B0\u524A\u9664\u30A8\u30E9\u30FC +DeleteContentTagAction.tagDelErr=\u30BF\u30B0\u306E\u524A\u9664\u30A8\u30E9\u30FC GetTagNameAndCommentDialog.noTags=\u30BF\u30B0\u7121\u3057 GetTagNameAndCommentDialog.createTag=\u30BF\u30B0\u3092\u4F5C\u6210 GetTagNameAndCommentDialog.cancelName=\u30AD\u30E3\u30F3\u30BB\u30EB @@ -36,16 +36,22 @@ GetTagNameDialog.createTag=\u30BF\u30B0\u3092\u4F5C\u6210 GetTagNameDialog.cancelName=\u30AD\u30E3\u30F3\u30BB\u30EB GetTagNameDialog.mustSupplyTtagName.msg=\u30BF\u30B0\u540D\u3092\u6307\u5B9A\u3057\u306A\u3051\u308C\u3070\u5148\u306B\u9032\u3081\u307E\u305B\u3093\u3002 GetTagNameDialog.tagNameErr=\u30BF\u30B0\u540D -GetTagNameDialog.illegalChars.msg=\u4E0D\u6B63\u306A\u6587\u5B57\u304C\u30BF\u30B0\u540D\u306B\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\u6B21\u306E\u6587\u5B57\u306F\u4F7F\u3048\u307E\u305B\u3093\uFF1A \\ \: * ? " < > | -GetTagNameDialog.illegalCharsErr=\u4E0D\u6B63\u306A\u6587\u5B57 +GetTagNameDialog.illegalCharsErr=\u4F7F\u7528\u3067\u304D\u306A\u3044\u6587\u5B57 GetTagNameDialog.unableToAddTagNameToCase.msg=\u30BF\u30B0\u540D{0}\u3092\u30B1\u30FC\u30B9\u306B\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 GetTagNameDialog.taggingErr=\u30BF\u30B0\u4ED8\u3051\u30A8\u30E9\u30FC GetTagNameDialog.tagNameAlreadyDef.msg=\u30BF\u30B0\u540D{0}\u306F\u65E2\u306B\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u3059\u3002 -GetTagNameDialog.dupTagErr=\u91CD\u8907\u30BF\u30B0\u306E\u30A8\u30E9\u30FC +GetTagNameDialog.dupTagErr=\u30BF\u30B0\u306E\u91CD\u8907\u30A8\u30E9\u30FC AddContentTagAction.cannotApplyTagErr=\u30BF\u30B0\u3092\u9069\u7528\u3067\u304D\u307E\u305B\u3093 OpenLogFolder.error1=\u30ED\u30B0\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} CTL_OpenLogFolder=\u30ED\u30B0\u30D5\u30A9\u30EB\u30C0\u3092\u958B\u304F ShowIngestProgressSnapshotAction.actionName.text=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30D7\u30ED\u30B0\u30EC\u30B9\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u53D6\u5F97 CTL_OpenPythonModulesFolderAction=Python\u30D7\u30E9\u30B0\u30A4\u30F3 OpenPythonModulesFolderAction.actionName.text=Python\u30D7\u30E9\u30B0\u30A4\u30F3 -OpenPythonModulesFolderAction.errorMsg.folderNotFound=Python\u30D7\u30E9\u30B0\u30A4\u30F3\u30D5\u30A9\u30EB\u30C0\u30FC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} \ No newline at end of file +OpenPythonModulesFolderAction.errorMsg.folderNotFound=Python\u30D7\u30E9\u30B0\u30A4\u30F3\u30D5\u30A9\u30EB\u30C0\u30FC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} +AddContentTagAction.tagExists={0}\u306F\u65E2\u306B{1}\u3068\u30BF\u30B0\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u540C\u3058\u30BF\u30B0\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002 +OpenLogFolder.CouldNotOpenLogFolder=\u30ED\u30B0\u30D5\u30A9\u30EB\u30C0\u30FC\u3092\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F +CTL_OpenOutputFolder=\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u30D5\u30A9\u30EB\u30C0\u3092\u3092\u958B\u304F +OpenOutputFolder.error1=\u6B21\u306E\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u30D5\u30A9\u30EB\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} +OpenOutputFolder.noCaseOpen=\u30AA\u30FC\u30D7\u30F3\u30B1\u30FC\u30B9\u304C\u306A\u3044\u306E\u3067\u3001\u4F5C\u696D\u4E2D\u306E\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u30D5\u30A9\u30EB\u30C0\u304C\u3042\u308A\u307E\u305B\u3093\u3002 +GetTagNameDialog.illegalChars.msg=\u4F7F\u7528\u3067\u304D\u306A\u3044\u6587\u5B57\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\n\u6B21\u306E\u6587\u5B57\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\uFF1A\\ \: * ? " < > | +OpenOutputFolder.CouldNotOpenOutputFolder=\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u30D5\u30A9\u30EB\u30C0\u304C\u304C\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/Bundle.properties b/Core/src/org/sleuthkit/autopsy/casemodule/Bundle.properties index 9a711047a8..f2d9e38e13 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/Bundle.properties +++ b/Core/src/org/sleuthkit/autopsy/casemodule/Bundle.properties @@ -229,7 +229,7 @@ Cannot open a non-Autopsy config file (at {1}). XMLCaseManagement.open.msgDlg.notAutCase.title=Error AddImageWizardIngestConfigPanel.CANCEL_BUTTON.text=Cancel ImageFilePanel.errorLabel.text=Error Label -DataSourceOnCDriveError.text=Warning: Path to multi-user data source is on \"C:\" drive +DataSourceOnCDriveError.text=Warning\: Path to multi-user data source is on "C\:" drive NewCaseVisualPanel1.CaseFolderOnCDriveError.text=Warning: Path to multi-user case folder is on \"C:\" drive LocalFilesPanel.errorLabel.text=Error Label CollaborationMonitor.addingDataSourceStatus.msg={0} adding data source diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/casemodule/Bundle_ja.properties index e61c8bf1cb..ce3ffbc462 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/casemodule/Bundle_ja.properties @@ -1,217 +1,228 @@ -CTL_AddImage=\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u8ffd\u52a0... -CTL_AddImageButton=\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u8ffd\u52a0 -CTL_CaseCloseAct=\u30b1\u30fc\u30b9\u3092\u9589\u3058\u308b -CTL_CaseNewAction=\u65b0\u898f\u30b1\u30fc\u30b9\u2026 -CTL_CasePropertiesAction=\u30b1\u30fc\u30b9\u30d7\u30ed\u30d1\u30c6\u30a3\u2026 -CTL_OpenAction=\u30b1\u30fc\u30b9\u3092\u958b\u304f\u2026 -Menu/File/OpenRecentCase=\u6700\u8fd1\u958b\u3044\u305f\u30b1\u30fc\u30b9\u3092\u958b\u304f -CTL_CaseDeleteAction=\u30b1\u30fc\u30b9\u524a\u9664 -OpenIDE-Module-Name=\u30b1\u30fc\u30b9 -NewCaseVisualPanel1.jLabel1.text_1=\u65b0\u898f\u30b1\u30fc\u30b9\u60c5\u5831\u3092\u5165\u529b\uff1a -NewCaseVisualPanel1.caseNameLabel.text_1=\u30b1\u30fc\u30b9\u540d\uff1a -NewCaseVisualPanel1.caseDirLabel.text=\u30d9\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\uff1a -NewCaseVisualPanel1.caseDirBrowseButton.text=\u95b2\u89a7 -NewCaseVisualPanel1.caseNameTextField.text_1= -NewCaseVisualPanel1.jLabel2.text_1=\u30b1\u30fc\u30b9\u30c7\u30fc\u30bf\u306f\u4e0b\u8a18\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u4fdd\u5b58\u3055\u308c\u307e\u3059\uff1a -NewCaseVisualPanel1.caseParentDirTextField.text= -NewCaseVisualPanel1.caseDirTextField.text_1= -CasePropertiesForm.caseDirLabel.text=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\uff1a -CasePropertiesForm.crDateLabel.text=\u4f5c\u6210\u65e5\uff1a -CasePropertiesForm.caseNameLabel.text=\u30b1\u30fc\u30b9\u540d\uff1a -CasePropertiesForm.crDateTextField.text= -CasePropertiesForm.caseNameTextField.text= -CasePropertiesForm.updateCaseNameButton.text=\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8 -CasePropertiesForm.casePropLabel.text=\u30b1\u30fc\u30b9\u60c5\u5831 -CasePropertiesForm.genInfoLabel.text=\u4e00\u822c\u60c5\u5831 -CasePropertiesForm.imgInfoLabel.text=\u30a4\u30e1\u30fc\u30b8\u60c5\u5831 +CTL_AddImage=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u3092\u8FFD\u52A0... +CTL_AddImageButton=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u3092\u8FFD\u52A0 +CTL_CaseCloseAct=\u30B1\u30FC\u30B9\u3092\u9589\u3058\u308B +CTL_CaseNewAction=\u65B0\u898F\u30B1\u30FC\u30B9\u2026 +CTL_CasePropertiesAction=\u30B1\u30FC\u30B9\u30D7\u30ED\u30D1\u30C6\u30A3\u2026 +CTL_OpenAction=\u30B1\u30FC\u30B9\u3092\u958B\u304F\u2026 +Menu/File/OpenRecentCase=\u6700\u8FD1\u958B\u3044\u305F\u30B1\u30FC\u30B9\u3092\u958B\u304F +CTL_CaseDeleteAction=\u30B1\u30FC\u30B9\u3092\u524A\u9664 +OpenIDE-Module-Name=\u30B1\u30FC\u30B9 +NewCaseVisualPanel1.jLabel1.text_1=\u65B0\u898F\u30B1\u30FC\u30B9\u60C5\u5831\u3092\u5165\u529B\uFF1A +NewCaseVisualPanel1.caseNameLabel.text_1=\u30B1\u30FC\u30B9\u540D\uFF1A +NewCaseVisualPanel1.caseDirLabel.text=\u30D9\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\uFF1A +NewCaseVisualPanel1.caseDirBrowseButton.text=\u95B2\u89A7 +NewCaseVisualPanel1.jLabel2.text_1=\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u306F\u6B21\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3059\uFF1A +CasePropertiesForm.caseDirLabel.text=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\uFF1A +CasePropertiesForm.crDateLabel.text=\u4F5C\u6210\u65E5\uFF1A +CasePropertiesForm.caseNameLabel.text=\u30B1\u30FC\u30B9\u540D\uFF1A +CasePropertiesForm.updateCaseNameButton.text=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8 +CasePropertiesForm.casePropLabel.text=\u30B1\u30FC\u30B9\u60C5\u5831 +CasePropertiesForm.genInfoLabel.text=\u4E00\u822C\u60C5\u5831 +CasePropertiesForm.imgInfoLabel.text=\u30A4\u30E1\u30FC\u30B8\u60C5\u5831 CasePropertiesForm.OKButton.text=OK -CasePropertiesForm.deleteCaseButton.text=\u30b1\u30fc\u30b9\u524a\u9664 -CueBannerPanel.autopsyLogo.text= -CueBannerPanel.createNewLabel.text=\u65b0\u898f\u30b1\u30fc\u30b9\u4f5c\u6210 -CueBannerPanel.openLabel.text=\u65e2\u5b58\u30b1\u30fc\u30b9\u3092\u958b\u304f -CueBannerPanel.closeButton.text=\u9589\u3058\u308b -CueBannerPanel.openRecentLabel.text=\u6700\u8fd1\u958b\u3044\u305f\u30b1\u30fc\u30b9\u3092\u958b\u304f -CueBannerPanel.newCaseButton.text= -CueBannerPanel.openCaseButton.text= -CueBannerPanel.openRecentButton.text= -OpenRecentCasePanel.cancelButton.text=\u30ad\u30e3\u30f3\u30bb\u30eb -OpenRecentCasePanel.jLabel1.text=\u6700\u8fd1\u958b\u3044\u305f\u30d5\u30a1\u30a4\u30eb -CasePropertiesForm.caseNumberLabel.text=\u30b1\u30fc\u30b9\u756a\u53f7\uff1a -CasePropertiesForm.examinerLabel.text=\u8abf\u67fb\u62c5\u5f53\u8005\uff1a -CasePropertiesForm.caseNumberTextField.text= -CasePropertiesForm.examinerTextField.text= -NewCaseVisualPanel2.caseNumberTextField.text= -NewCaseVisualPanel2.examinerLabel.text=\u8abf\u67fb\u62c5\u5f53\u8005\uff1a -NewCaseVisualPanel2.caseNumberLabel.text=\u30b1\u30fc\u30b9\u756a\u53f7\uff1a -NewCaseVisualPanel2.examinerTextField.text= -NewCaseVisualPanel2.optionalLabel.text=\u30aa\u30d7\u30b7\u30e7\u30ca\u30eb\uff1a\u30b1\u30fc\u30b9\u756a\u53f7\u53ca\u3073\u8abf\u67fb\u62c5\u5f53\u8005\u3092\u8a2d\u5b9a -AddImageErrorsDialog.title=\u30a4\u30e1\u30fc\u30b8\u30ed\u30b0\u3092\u8ffd\u52a0 -AddImageErrorsDialog.copyButton.toolTipText=\u30a8\u30e9\u30fc\u3092\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc\u3057\u307e\u3059 -AddImageErrorsDialog.copyButton.text=\u30b3\u30d4\u30fc -AddImageErrorsDialog.closeButton.toolTipText=\u3053\u306e\u30a6\u30a3\u30f3\u30c9\u30a6\u3092\u9589\u3058\u307e\u3059 -AddImageErrorsDialog.closeButton.text=\u9589\u3058\u308b -OpenRecentCasePanel.openButton.text=\u958b\u304f -ImageFilePanel.pathLabel.text=\u30a4\u30e1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb\u3092\u95b2\u89a7\uff1a -ImageFilePanel.browseButton.text=\u95b2\u89a7 -ImageFilePanel.pathTextField.text= -LocalDiskPanel.diskLabel.text=\u30ed\u30fc\u30ab\u30eb\u30c7\u30a3\u30b9\u30af\u3092\u9078\u629e\uff1a -MissingImageDialog.selectButton.text=\u30a4\u30e1\u30fc\u30b8\u3092\u9078\u629e -MissingImageDialog.titleLabel.text=\u6b20\u843d\u3057\u305f\u30a4\u30e1\u30fc\u30b8\u306e\u691c\u7d22 -MissingImageDialog.cancelButton.text=\u30ad\u30e3\u30f3\u30bb\u30eb -LocalDiskPanel.errorLabel.text=\u30a8\u30e9\u30fc\u30e9\u30d9\u30eb -LocalFilesPanel.infoLabel.text=\u30ed\u30fc\u30ab\u30eb\u30d5\u30a1\u30a4\u30eb\u53ca\u3073\u30d5\u30a9\u30eb\u30c0\u3092\u8ffd\u52a0\uff1a -LocalFilesPanel.selectButton.text=\u8ffd\u52a0 -LocalFilesPanel.localFileChooser.dialogTitle=\u30ed\u30fc\u30ab\u30eb\u30d5\u30a1\u30a4\u30eb\u53c8\u306f\u30d5\u30a9\u30eb\u30c0\u3092\u9078\u629e -LocalFilesPanel.selectButton.toolTipText=\u30ed\u30fc\u30ab\u30eb\u30d5\u30a1\u30a4\u30eb\u53ca\u3073\u30d5\u30a9\u30eb\u30c0\u3092\u30ed\u30b8\u30ab\u30eb\u30d5\u30a1\u30a4\u30eb\u3068\u3057\u3066\u8ffd\u52a0\u3057\u307e\u3059 -LocalFilesPanel.clearButton.text=\u30af\u30ea\u30a2 -LocalFilesPanel.clearButton.toolTipText=\u73fe\u5728\u9078\u629e\u3055\u308c\u3066\u3044\u308b\u30ed\u30fc\u30ab\u30eb\u30d5\u30a1\u30a4\u30eb\u30d1\u30b9\u304c\u30af\u30ea\u30a2\u3055\u308c\u307e\u3059 -LocalFilesPanel.selectedPaths.toolTipText= -LocalFilesPanel.localFileChooser.approveButtonText=\u9078\u629e -LocalFilesPanel.localFileChooser.approveButtonToolTipText= -LocalFilesPanel.selectButton.actionCommand=\u8ffd\u52a0 -AddImageWizardIngestConfigVisual.subtitleLabel.text=\u3053\u306e\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u306b\u5bfe\u3057\u3066\u5b9f\u884c\u3057\u305f\u3044\u30a4\u30f3\u30b8\u30a7\u30b9\u30c8\u30e2\u30b8\u30e5\u30fc\u30eb\u7fa4\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 -AddImageWizardAddingProgressVisual.statusLabel.text=\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u304c\u30ed\u30fc\u30ab\u30eb\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\u3002\u30d5\u30a1\u30a4\u30eb\u3092\u89e3\u6790\u4e2d\u3067\u3059\u3002 -AddImageWizardChooseDataSourceVisual.typeTabel.text=\u8ffd\u52a0\u3059\u308b\u30bd\u30fc\u30b9\u30bf\u30a4\u30d7\u3092\u9078\u629e\uff1a +CasePropertiesForm.deleteCaseButton.text=\u30B1\u30FC\u30B9\u3092\u524A\u9664 +CueBannerPanel.createNewLabel.text=\u65B0\u898F\u30B1\u30FC\u30B9\u3092\u4F5C\u6210 +CueBannerPanel.openLabel.text=\u65E2\u5B58\u30B1\u30FC\u30B9\u3092\u958B\u304F +CueBannerPanel.closeButton.text=\u9589\u3058\u308B +CueBannerPanel.openRecentLabel.text=\u6700\u8FD1\u958B\u3044\u305F\u30B1\u30FC\u30B9\u3092\u958B\u304F +OpenRecentCasePanel.cancelButton.text=\u30AD\u30E3\u30F3\u30BB\u30EB +OpenRecentCasePanel.jLabel1.text=\u6700\u8FD1\u958B\u3044\u305F\u30D5\u30A1\u30A4\u30EB +CasePropertiesForm.caseNumberLabel.text=\u30B1\u30FC\u30B9\u756A\u53F7\uFF1A +CasePropertiesForm.examinerLabel.text=\u8ABF\u67FB\u62C5\u5F53\u8005\uFF1A +NewCaseVisualPanel2.examinerLabel.text=\u8ABF\u67FB\u62C5\u5F53\u8005\uFF1A +NewCaseVisualPanel2.caseNumberLabel.text=\u30B1\u30FC\u30B9\u756A\u53F7\uFF1A +NewCaseVisualPanel2.optionalLabel.text=\u30AA\u30D7\u30B7\u30E7\u30CA\u30EB\uFF1A\u30B1\u30FC\u30B9\u756A\u53F7\u304A\u3088\u3073\u8ABF\u67FB\u62C5\u5F53\u8005\u3092\u8A2D\u5B9A +AddImageErrorsDialog.title=\u30A4\u30E1\u30FC\u30B8\u30ED\u30B0\u3092\u8FFD\u52A0 +AddImageErrorsDialog.copyButton.toolTipText=\u30A8\u30E9\u30FC\u3092\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3059 +AddImageErrorsDialog.copyButton.text=\u30B3\u30D4\u30FC +AddImageErrorsDialog.closeButton.toolTipText=\u3053\u306E\u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u9589\u3058\u307E\u3059 +AddImageErrorsDialog.closeButton.text=\u9589\u3058\u308B +OpenRecentCasePanel.openButton.text=\u958B\u304F +ImageFilePanel.pathLabel.text=\u30A4\u30E1\u30FC\u30B8\u30D5\u30A1\u30A4\u30EB\u3092\u95B2\u89A7\uFF1A +ImageFilePanel.browseButton.text=\u95B2\u89A7 +LocalDiskPanel.diskLabel.text=\u30ED\u30FC\u30AB\u30EB\u30C7\u30A3\u30B9\u30AF\u3092\u9078\u629E\uFF1A +MissingImageDialog.selectButton.text=\u30A4\u30E1\u30FC\u30B8\u3092\u9078\u629E +MissingImageDialog.titleLabel.text=\u6B20\u843D\u3057\u305F\u30A4\u30E1\u30FC\u30B8\u306E\u691C\u7D22 +MissingImageDialog.cancelButton.text=\u30AD\u30E3\u30F3\u30BB\u30EB +LocalDiskPanel.errorLabel.text=\u30A8\u30E9\u30FC\u30E9\u30D9\u30EB +LocalFilesPanel.infoLabel.text=\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u304A\u3088\u3073\u30D5\u30A9\u30EB\u30C0\u3092\u8FFD\u52A0\uFF1A +LocalFilesPanel.selectButton.text=\u8FFD\u52A0 +LocalFilesPanel.localFileChooser.dialogTitle=\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u53C8\u306F\u30D5\u30A9\u30EB\u30C0\u3092\u9078\u629E +LocalFilesPanel.selectButton.toolTipText=\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u304A\u3088\u3073\u30D5\u30A9\u30EB\u30C0\u3092\u30ED\u30B8\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u8FFD\u52A0\u3057\u307E\u3059 +LocalFilesPanel.clearButton.text=\u30AF\u30EA\u30A2 +LocalFilesPanel.clearButton.toolTipText=\u73FE\u5728\u9078\u629E\u3055\u308C\u3066\u3044\u308B\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9\u304C\u30AF\u30EA\u30A2\u3055\u308C\u307E\u3059 +LocalFilesPanel.localFileChooser.approveButtonText=\u9078\u629E +LocalFilesPanel.selectButton.actionCommand=\u8FFD\u52A0 +AddImageWizardIngestConfigVisual.subtitleLabel.text=\u3053\u306E\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u306B\u5BFE\u3057\u3066\u5B9F\u884C\u3057\u305F\u3044\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002 +AddImageWizardAddingProgressVisual.statusLabel.text=\u30ED\u30FC\u30AB\u30EB\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306B\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u304C\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F\u3002\u30D5\u30A1\u30A4\u30EB\u3092\u89E3\u6790\u4E2D\u3067\u3059\u3002 +AddImageWizardChooseDataSourceVisual.typeTabel.text=\u8FFD\u52A0\u3059\u308B\u30BD\u30FC\u30B9\u30BF\u30A4\u30D7\u3092\u9078\u629E\uFF1A AddImageWizardChooseDataSourceVisual.jLabel2.text=jLabel2 -AddImageWizardChooseDataSourceVisual.nextLabel.text= \u300c\u6b21\u3078\u300d\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u3001\u30a4\u30f3\u30d7\u30c3\u30c8\u30c7\u30fc\u30bf\u3092\u89e3\u6790\u3001\u30dc\u30ea\u30e5\u30fc\u30e0\u53ca\u3073\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u30c7\u30fc\u30bf\u3092\u62bd\u51fa\u3001\u30ed\u30fc\u30ab\u30eb\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30c7\u30fc\u30bf\u3092\u6295\u5165\u3002 -AddImageWizardAddingProgressVisual.progressLabel.text=\uff1c\u30d7\u30ed\u30b0\u30ec\u30b9\uff1e -AddImageWizardAddingProgressVisual.viewLogButton.text=\u30ed\u30b0\u3092\u8868\u793a -AddImageWizardAddingProgressVisual.subTitle1Label.text=\u30ed\u30fc\u30ab\u30eb\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u60c5\u5831\u3092\u8ffd\u52a0\u4e2d\u3067\u3059\u3002\u3053\u3061\u3089\u304c\u5b8c\u4e86\u6b21\u7b2c\u3001\u30d5\u30a1\u30a4\u30eb\u89e3\u6790\u304c\u59cb\u307e\u308a\u307e\u3059\u3002 -ImageFilePanel.timeZoneLabel.text=\u30a4\u30f3\u30d7\u30c3\u30c8\u30bf\u30a4\u30e0\u30be\u30fc\u30f3\u3092\u9078\u629e\u3057\u3066\u4e0b\u3055\u3044\uff1a -ImageFilePanel.descLabel.text=\uff08\u3088\u308a\u901f\u3044\u7d50\u679c\u3001\u3057\u304b\u3057\u4e00\u90e8\u306e\u30c7\u30fc\u30bf\u306f\u691c\u7d22\u3055\u308c\u307e\u305b\u3093\uff09 -LocalDiskPanel.timeZoneLabel.text=\u30a4\u30f3\u30d7\u30c3\u30c8\u30bf\u30a4\u30e0\u30be\u30fc\u30f3\u3092\u9078\u629e\u3057\u3066\u4e0b\u3055\u3044\uff1a -LocalDiskPanel.descLabel.text=\uff08\u3088\u308a\u901f\u3044\u7d50\u679c\u3001\u3057\u304b\u3057\u4e00\u90e8\u306e\u30c7\u30fc\u30bf\u306f\u691c\u7d22\u3055\u308c\u307e\u305b\u3093\uff09 -MissingImageDialog.browseButton.text=\u95b2\u89a7 -AddImageWizardAddingProgressVisual.progressTextArea.border.title=\u30b9\u30c6\u30fc\u30bf\u30b9 -AddImageAction.wizard.title=\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u3092\u8ffd\u52a0 -AddImageAction.ingestConfig.ongoingIngest.msg=\u4ed6\u306e\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u304c\u51e6\u7406\u4e2d\u3067\u3059\u3002\u65b0\u898f\u30bd\u30fc\u30b9\u3092\u4eca\u8ffd\u52a0\u3059\u308b\u3068\u5b9f\u884c\u4e2d\u306e\u51e6\u7406\u304c\u9045\u304f\u306a\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002
\u3053\u306e\u307e\u307e\u5b9f\u884c\u3057\u3001\u65b0\u898f\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u3092\u8ffd\u52a0\u3057\u307e\u3059\u304b\uff1f -AddImageAction.ingestConfig.ongoingIngest.title=\u51e6\u7406\u4e2d -AddImageTask.run.progress.adding=\u8ffd\u52a0\u4e2d\uff1a{0} -AddImageTask.interrupt.exception.msg=\u30a4\u30e1\u30fc\u30b8\u8ffd\u52a0\u30d7\u30ed\u30bb\u30b9\u306e\u505c\u6b62\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 -AddImageWizardAddingProgressPanel.isValid.focusNext=\u6b21 > -AddImageWizardAddingProgressPanel.stateStarted.progressBarText=*\u5927\u304d\u3044\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u306e\u5834\u5408\u3001\u3053\u306e\u30d7\u30ed\u30bb\u30b9\u306f\u6642\u9593\u304c\u304b\u304b\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002 -AddImageWizardAddingProgressVisual.addingDsComplete.text=\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u3092\u8ffd\u52a0 - \u5b8c\u4e86 -AddImageWizardAddingProgressVisual.getName.text=\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u3092\u8ffd\u52a0 -AddImageWizardAddingProgressVisual.showErrors.critText=*\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u306e\u8ffd\u52a0\u306b\u5931\u6557\u3057\u307e\u3057\u305f\uff08\u81f4\u547d\u7684\u306a\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff09\u3002\u4e0b\u8a18\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u30ed\u30b0\u3092\u78ba\u8a8d\u3057\u3066\u4e0b\u3055\u3044\u3002 -AddImageWizardAddingProgressVisual.showErrors.nonCritText=*\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u306e\u8ffd\u52a0\u306b\u5931\u6557\u3057\u307e\u3057\u305f\uff08\u91cd\u5927\u3067\u306f\u306a\u3044\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff09\u3002\u4e0b\u8a18\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u30ed\u30b0\u3092\u78ba\u8a8d\u3057\u3066\u4e0b\u3055\u3044\u3002 -AddImageWizardChooseDataSourcePanel.moveFocusNext=\u6b21 > -AddImageWizardChooseDataSourceVisual.getName.text=\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u60c5\u5831\u3092\u5165\u529b -AddImageWizardIngestConfigPanel.dsProcDone.noErrs.text=*\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\u3002 -AddImageWizardIngestConfigPanel.dsProcDone.errs.text=*\u30c7\u30fc\u30bf\u30bd\u30fc\u30b9\u306e\u8ffd\u52a0\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 -AddImageWizardIngestConfigVisual.getName.text=\u30a4\u30f3\u30b8\u30a7\u30b9\u30c8\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u8a2d\u5b9a -AddImageWizardIterator.stepXofN=\u30b9\u30c6\u30c3\u30d7{0}\uff0f{1} -AddLocalFilesTask.localFileAdd.progress.text=\u8ffd\u52a0\u4e2d\uff1a{0}/{1} -Case.getCurCase.exception.noneOpen=\u73fe\u5728\u306e\u30b1\u30fc\u30b9\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\uff1b\u958b\u3044\u3066\u3044\u308b\u30b1\u30fc\u30b9\u304c\u3042\u308a\u307e\u305b\u3093\uff01 -Case.create.exception.msg=\u30b1\u30fc\u30b9\u4f5c\u6210\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff1a\u30c7\u30a3\u30ec\u30af\u30c8\u30ea{1}\u306e{0} -Case.open.exception.blankCase.msg=\u30b1\u30fc\u30b9\u540d\u304c\u7a7a\u767d\u3067\u3059\u3002 -Case.open.msgDlg.updated.msg=\u30b1\u30fc\u30b9\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30b9\u30ad\u30fc\u30de\u3092\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u307e\u3057\u305f\u3002\n\ -\u4e0b\u8a18\u306e\u30d1\u30b9\u3092\u6301\u3064\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30b3\u30d4\u30fc\u304c\u4f5c\u6210\u3055\u308c\u307e\u3057\u305f\uff1a\n\ - {0} -Case.open.msgDlg.updated.title=\u30b1\u30fc\u30b9\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30b9\u30ad\u30fc\u30de\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8 -Case.open.exception.checkFile.msg=\u6b63\u3057\u3044\u30b1\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u3092\u9078\u629e\u3057\u305f\u304b\u78ba\u8a8d\u3057\u3066\u4e0b\u3055\u3044\uff08\u901a\u5e38\u62e1\u5f35\u5b50{0}\u3092\u6301\u3064\uff09 -Case.checkImgExist.confDlg.doesntExist.msg={0} \u304c\u3053\u306e\u30b1\u30fc\u30b9\u306b\u95a2\u9023\u3059\u308b\u30a4\u30e1\u30fc\u30b8\u306e\uff11\u500b\u304c\u6b20\u843d\u3057\u3066\u3044\u308b\u306e\u3092\u691c\u51fa\u3057\u307e\u3057\u305f\u3002\u305d\u308c\u3089\u3092\u4eca\u304b\u3089\u691c\u7d22\u3057\u307e\u3059\u304b\uff1f\n\n\ -\u4ee5\u524d\u3001\u30a4\u30e1\u30fc\u30b8\u306f\u4e0b\u8a18\u306b\u3042\u308a\u307e\u3057\u305f\uff1a\n\ +AddImageWizardChooseDataSourceVisual.nextLabel.text= \u300C\u6B21\u3078\u300D\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u3001\u30A4\u30F3\u30D7\u30C3\u30C8\u30C7\u30FC\u30BF\u3092\u89E3\u6790\u3001\u30DC\u30EA\u30E5\u30FC\u30E0\u304A\u3088\u3073\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u30C7\u30FC\u30BF\u3092\u62BD\u51FA\u3001\u30ED\u30FC\u30AB\u30EB\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306B\u30C7\u30FC\u30BF\u3092\u6295\u5165\u3002 +AddImageWizardAddingProgressVisual.progressLabel.text=\uFF1C\u30D7\u30ED\u30B0\u30EC\u30B9\uFF1E +AddImageWizardAddingProgressVisual.viewLogButton.text=\u30ED\u30B0\u3092\u8868\u793A +AddImageWizardAddingProgressVisual.subTitle1Label.text=\u30ED\u30FC\u30AB\u30EB\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306B\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u60C5\u5831\u3092\u8FFD\u52A0\u4E2D\u3067\u3059\u3002\u3053\u3061\u3089\u304C\u5B8C\u4E86\u6B21\u7B2C\u3001\u30D5\u30A1\u30A4\u30EB\u89E3\u6790\u304C\u59CB\u307E\u308A\u307E\u3059\u3002 +ImageFilePanel.timeZoneLabel.text=\u30A4\u30F3\u30D7\u30C3\u30C8\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3\u3092\u9078\u629E\u3057\u3066\u4E0B\u3055\u3044\uFF1A +ImageFilePanel.descLabel.text=\uFF08\u3088\u308A\u901F\u3044\u7D50\u679C\u3001\u3057\u304B\u3057\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u306F\u691C\u7D22\u3055\u308C\u307E\u305B\u3093\uFF09 +LocalDiskPanel.timeZoneLabel.text=\u30A4\u30F3\u30D7\u30C3\u30C8\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3\u3092\u9078\u629E\u3057\u3066\u4E0B\u3055\u3044\uFF1A +LocalDiskPanel.descLabel.text=\uFF08\u3088\u308A\u901F\u3044\u7D50\u679C\u3001\u3057\u304B\u3057\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u306F\u691C\u7D22\u3055\u308C\u307E\u305B\u3093\uFF09 +MissingImageDialog.browseButton.text=\u95B2\u89A7 +AddImageWizardAddingProgressVisual.progressTextArea.border.title=\u30B9\u30C6\u30FC\u30BF\u30B9 +AddImageAction.wizard.title=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u3092\u8FFD\u52A0 +AddImageAction.ingestConfig.ongoingIngest.msg=\u4ED6\u306E\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u304C\u51E6\u7406\u4E2D\u3067\u3059\u3002\u4ECA\u65B0\u898F\u30BD\u30FC\u30B9\u3092\u8FFD\u52A0\u3059\u308B\u3068\u5B9F\u884C\u4E2D\u306E\u51E6\u7406\u304C\u9045\u304F\u306A\u308B\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002
\u3053\u306E\u307E\u307E\u5B9F\u884C\u3057\u3001\u65B0\u898F\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u3092\u8FFD\u52A0\u3057\u307E\u3059\u304B\uFF1F +AddImageAction.ingestConfig.ongoingIngest.title=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u5B9F\u884C\u4E2D +AddImageTask.run.progress.adding=\u8FFD\u52A0\u4E2D\uFF1A{0} +AddImageTask.interrupt.exception.msg=\u30A4\u30E1\u30FC\u30B8\u8FFD\u52A0\u30D7\u30ED\u30BB\u30B9\u306E\u505C\u6B62\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +AddImageWizardAddingProgressPanel.isValid.focusNext=\u6B21 > +AddImageWizardAddingProgressPanel.stateStarted.progressBarText=*\u5927\u304D\u3044\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u306E\u5834\u5408\u3001\u3053\u306E\u30D7\u30ED\u30BB\u30B9\u306F\u6642\u9593\u304C\u304B\u304B\u308B\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +AddImageWizardAddingProgressVisual.addingDsComplete.text=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u3092\u8FFD\u52A0 - \u5B8C\u4E86 +AddImageWizardAddingProgressVisual.getName.text=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u3092\u8FFD\u52A0 +AddImageWizardAddingProgressVisual.showErrors.critText=*\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u306E\u8FFD\u52A0\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF08\u81F4\u547D\u7684\u306A\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF09\u3002\u4E0B\u8A18\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002 +AddImageWizardAddingProgressVisual.showErrors.nonCritText=*\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u306E\u8FFD\u52A0\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF08\u81F4\u547D\u7684\u3067\u306F\u306A\u3044\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF09\u3002\u4E0B\u8A18\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002 +AddImageWizardChooseDataSourcePanel.moveFocusNext=\u6B21 > +AddImageWizardChooseDataSourceVisual.getName.text=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u60C5\u5831\u3092\u5165\u529B +AddImageWizardIngestConfigPanel.dsProcDone.noErrs.text=*\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u304C\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F\u3002 +AddImageWizardIngestConfigPanel.dsProcDone.errs.text=*\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u306E\u8FFD\u52A0\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +AddImageWizardIngestConfigVisual.getName.text=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u8A2D\u5B9A +AddImageWizardIterator.stepXofN=\u30B9\u30C6\u30C3\u30D7{0}\uFF0F{1} +AddLocalFilesTask.localFileAdd.progress.text=\u8FFD\u52A0\u4E2D\uFF1A{0}/{1} +Case.getCurCase.exception.noneOpen=\u4F5C\u696D\u4E2D\u306E\u30B1\u30FC\u30B9\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\uFF1B\u958B\u3044\u3066\u3044\u308B\u30B1\u30FC\u30B9\u304C\u3042\u308A\u307E\u305B\u3093\uFF01 +Case.create.exception.msg=\u30B1\u30FC\u30B9\u4F5C\u6210\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{1}\u306E{0} +Case.open.exception.blankCase.msg=\u30B1\u30FC\u30B9\u540D\u304C\u7A7A\u767D\u3067\u3059\u3002 +Case.open.msgDlg.updated.msg=\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F\u3002\n\u306E\u30D1\u30B9\u3092\u6301\u3064\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u30B3\u30D4\u30FC\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\uFF1A\n\ + {\u6B210} +Case.open.msgDlg.updated.title=\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u66F4\u65B0 +Case.open.exception.checkFile.msg=\u30B1\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB\u306F{0}\u62E1\u5F35\u5B50\u304C\u5FC5\u8981\u3067\u3059\u3002 +Case.checkImgExist.confDlg.doesntExist.msg={0} \u304C\u3053\u306E\u30B1\u30FC\u30B9\u306B\u95A2\u9023\u3059\u308B\u30A4\u30E1\u30FC\u30B8\u306E\u3046\u3061\uFF11\u3064\u304C\u6B20\u843D\u3057\u3066\u3044\u308B\u306E\u3092\u691C\u51FA\u3057\u307E\u3057\u305F\u3002\u305D\u308C\u3092\u4ECA\u304B\u3089\u691C\u7D22\u3057\u307E\u3059\u304B\uFF1F\n\n\ +\u4EE5\u524D\u3001\u30A4\u30E1\u30FC\u30B8\u306F\u6B21\u306B\u3042\u308A\u307E\u3057\u305F\uFF1A\n\ {1}\n\ -\u3044\u3044\u3048\u3092\u9078\u629e\u3057\u3066\u3082\u3001\u4eca\u5f8c\u3082\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u95b2\u89a7\u3057\u3001\u30ec\u30dd\u30fc\u30c8\u751f\u6210\u304c\u3067\u304d\u307e\u3059\u304c\u3001\u30d5\u30a1\u30a4\u30eb\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u8868\u793a\u307e\u305f\u306f\u30a4\u30f3\u30b8\u30a7\u30b9\u30c8\u30d7\u30ed\u30bb\u30b9\u306e\u5b9f\u884c\u304c\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3059\u3002 -Case.checkImgExist.confDlg.doesntExist.title=\u6b20\u843d\u30a4\u30e1\u30fc\u30b8 -Case.addImg.exception.msg=\u30b1\u30fc\u30b9\u306b\u30a4\u30e1\u30fc\u30b8\u3092\u8ffd\u52a0\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f -Case.closeCase.exception.msg=\u73fe\u5728\u306e\u30b1\u30fc\u30b9\u3092\u9589\u3058\u308b\u6700\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 -Case.deleteCase.exception.msg=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u524a\u9664\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff1a{0} -Case.deleteCase.exception.msg2=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u524a\u9664\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff1a{0} -Case.updateCaseName.exception.msg=\u30b1\u30fc\u30b9\u540d\u3092\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 -Case.updateExaminer.exception.msg=\u8abf\u67fb\u62c5\u5f53\u8005\u3092\u30a2\u30c3\u30d7\u30c7\u30fc\u30bf\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 -Case.updateCaseNum.exception.msg=\u30b1\u30fc\u30b9\u756a\u53f7\u3092\u30a2\u30c3\u30d7\u30c7\u30fc\u30bf\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 -Case.exception.errGetRootObj=\u30eb\u30fc\u30c8\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u53d6\u5f97\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002 -Case.createCaseDir.exception.existNotDir=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u65e2\u306b\u5b58\u5728\u3057\u3001\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\u306f\u3042\u308a\u307e\u305b\u3093\uff1a{0} -Case.createCaseDir.exception.existCantRW=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u65e2\u306b\u5b58\u5728\u3057\u3001\u8aad\u307f\u53d6\u308a\uff0f\u66f8\u304d\u8fbc\u307f\u304c\u3067\u304d\u307e\u305b\u3093\uff1a{0} -Case.createCaseDir.exception.cantCreate=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\uff1a {0} -Case.createCaseDir.exception.cantCreateCaseDir=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\uff1a {0} -Case.createCaseDir.exception.cantCreateModDir=\u30e2\u30b8\u30e5\u30fc\u30eb\u30a2\u30a6\u30c8\u30d7\u30c3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\uff1a{0} -Case.createCaseDir.exception.gen=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\uff1a{0} -CaseDeleteAction.closeConfMsg.text=\u3053\u306e\u30b1\u30fc\u30b9\u3092\u672c\u5f53\u306b\u9589\u3058\u3001\u524a\u9664\u3057\u307e\u3059\u304b\uff1f\n\ - \u30b1\u30fc\u30b9\u540d\uff1a {0}\n\ - \u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\: {1} -CaseDeleteAction.closeConfMsg.title=\u8b66\u544a\uff1a\u73fe\u5728\u306e\u30b1\u30fc\u30b9\u3092\u9589\u3058\u307e\u3059 -CaseDeleteAction.msgDlg.fileInUse.msg=\u5225\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u30d5\u30a9\u30eb\u30c0\u307e\u305f\u306f\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u3044\u3066\u3044\u308b\u306e\u3067\u3001\u524a\u9664\u3092\u5b8c\u4e86\u3067\u304d\u307e\u305b\u3093\u3002\n\n\ -\u30d5\u30a9\u30eb\u30c0\u307e\u305f\u306f\u30d5\u30a1\u30a4\u30eb\u3092\u9589\u3058\u3066\u304b\u3089\u518d\u5b9f\u884c\u3059\u308b\u304b\u3001\u624b\u52d5\u3067\u30b1\u30fc\u30b9\u3092\u524a\u9664\u3057\u3066\u4e0b\u3055\u3044\u3002 -CaseDeleteAction.msgDlg.fileInUse.title=\u30a8\u30e9\u30fc\uff1a\u30d5\u30a9\u30eb\u30c0\u304c\u4f7f\u7528\u4e2d -CaseDeleteAction.msgDlg.caseDelete.msg=\u30b1\u30fc\u30b9{0}\u306f\u524a\u9664\u3055\u308c\u307e\u3057\u305f\u3002 -CaseOpenAction.autFilter.title={0} \u30b1\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb ( {1}) -CaseOpenAction.msgDlg.fileNotExist.msg=\u30a8\u30e9\u30fc\uff1a\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002 -CaseOpenAction.msgDlg.fileNotExist.title=\u30a8\u30e9\u30fc -CaseOpenAction.msgDlg.cantOpenCase.msg=\u30a8\u30e9\u30fc\uff1a\u30d5\u30a9\u30eb\u30c0{0}\: {1}\u306e\u30b1\u30fc\u30b9\u3092\u958b\u3051\u307e\u305b\u3093\u3067\u3057\u305f -CaseOpenAction.msgDlg.cantOpenCase.title=\u30a8\u30e9\u30fc -CasePropertiesAction.window.title=\u30b1\u30fc\u30b9\u30d7\u30ed\u30d1\u30c6\u30a3 -CasePropertiesForm.updateCaseName.msgDlg.empty.msg=\u30b1\u30fc\u30b9\u540d\u306f\u7a7a\u767d\u3067\u306f\u3044\u3051\u307e\u305b\u3093\u3002 -CasePropertiesForm.updateCaseName.msgDlg.empty.title=\u30a8\u30e9\u30fc -CasePropertiesForm.updateCaseName.msgDlg.invalidSymbols.msg=\u30b1\u30fc\u30b9\u540d\u306b\u306f\u4e0b\u8a18\u306e\u8a18\u53f7\u3092\u542b\u3081\u307e\u305b\u3093\uff1a\\ / \: * ? " < > | -CasePropertiesForm.updateCaseName.msgDlg.invalidSymbols.title=\u30a8\u30e9\u30fc -CasePropertiesForm.updateCaseName.confMsg.msg=\u30b1\u30fc\u30b9\u540d\u3092"{0}"\u304b\u3089"{1}"\u306b\u672c\u5f53\u306b\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u307e\u3059\u304b\uff1f -CasePropertiesForm.updateCaseName.confMsg.title=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u4f5c\u6210 -CueBannerPanel.title.text=\u6700\u8fd1\u958b\u3044\u305f\u30b1\u30fc\u30b9\u3092\u958b\u304f -GeneralFilter.rawImageDesc.text=\u30ed\u30fc\u30a4\u30e1\u30fc\u30b8(*.img, *.dd, *.001, *.aa, *.raw, *.bin) -GeneralFilter.encaseImageDesc.text=\u30a8\u30f3\u30b1\u30fc\u30b9\u30a4\u30e1\u30fc\u30b8(*.e01) -ImageDSProcessor.dsType.text=\u30a4\u30e1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb -ImageDSProcessor.allDesc.text=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u308b\u5168\u30bf\u30a4\u30d7 -ImageFilePanel.moduleErr=\u30e2\u30b8\u30e5\u30fc\u30eb\u30a8\u30e9\u30fc -ImageFilePanel.moduleErr.msg=ImageFilePanel\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u78ba\u8a8d\u4e2d\u306b\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u30a8\u30e9\u30fc\u3092\u8d77\u3053\u3057\u307e\u3057\u305f\u3002\u3069\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u304b\u30ed\u30b0\u3067\u78ba\u8a8d\u3057\u3066\u4e0b\u3055\u3044\u3002\u4e00\u90e8\u306e\u30c7\u30fc\u30bf\u304c\u4e0d\u5b8c\u5168\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002 -LocalDiskDSProcessor.dsType.text=\u30ed\u30fc\u30ab\u30eb\u30c7\u30a3\u30b9\u30af -LocalDiskPanel.localDiskModel.loading.msg=\u30ed\u30fc\u30ab\u30eb\u30c7\u30a3\u30b9\u30af\u3092\u30ed\u30fc\u30c9\u4e2d\u2026 -LocalDiskPanel.moduleErr=\u30e2\u30b8\u30e5\u30fc\u30eb\u30a8\u30e9\u30fc -LocalDiskPanel.moduleErr.msg=LocalDiskPanel\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u78ba\u8a8d\u4e2d\u306b\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u30a8\u30e9\u30fc\u3092\u8d77\u3053\u3057\u307e\u3057\u305f\u3002\u3069\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u304b\u30ed\u30b0\u3067\u78ba\u8a8d\u3057\u3066\u4e0b\u3055\u3044\u3002\u4e00\u90e8\u306e\u30c7\u30fc\u30bf\u304c\u4e0d\u5b8c\u5168\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002 -LocalDiskPanel.errLabel.disksNotDetected.text=\u30c7\u30a3\u30b9\u30af\u304c\u691c\u51fa\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4e00\u90e8\u306e\u30b7\u30b9\u30c6\u30e0\u3067\u306f\u7ba1\u7406\u8005\u6a29\u9650\u304c\u5fc5\u8981\u3067\u3059\uff08\u3082\u3057\u304f\u306f\u300c\u7ba1\u7406\u8005\u3068\u3057\u3066\u5b9f\u884c\u3059\u308b\u300d\u304c\u5fc5\u8981\uff09\u3002 -LocalDiskPanel.errLabel.disksNotDetected.toolTipText=\u30c7\u30a3\u30b9\u30af\u304c\u691c\u51fa\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4e00\u90e8\u306e\u30b7\u30b9\u30c6\u30e0\u3067\u306f\u7ba1\u7406\u8005\u6a29\u9650\u304c\u5fc5\u8981\u3067\u3059\uff08\u3082\u3057\u304f\u306f\u300c\u7ba1\u7406\u8005\u3068\u3057\u3066\u5b9f\u884c\u3059\u308b\u300d\u304c\u5fc5\u8981\uff09\u3002 -LocalDiskPanel.errLabel.drivesNotDetected.text=\u30ed\u30fc\u30ab\u30eb\u30c9\u30e9\u30a4\u30d6\u304c\u691c\u51fa\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u81ea\u52d5\u691c\u51fa\u306f\u3053\u306eOS\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u304b\u3001\u7ba1\u7406\u8005\u6a29\u9650\u304c\u5fc5\u8981\u3067\u3059\u3002 -LocalDiskPanel.errLabel.drivesNotDetected.toolTipText=\u30ed\u30fc\u30ab\u30eb\u30c9\u30e9\u30a4\u30d6\u304c\u691c\u51fa\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u81ea\u52d5\u691c\u51fa\u306f\u3053\u306eOS\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u304b\u3001\u7ba1\u7406\u8005\u6a29\u9650\u304c\u5fc5\u8981\u3067\u3059\u3002 -LocalDiskPanel.errLabel.someDisksNotDetected.text=\u4e00\u90e8\u306e\u30c7\u30a3\u30b9\u30af\u304c\u691c\u51fa\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4e00\u90e8\u306e\u30b7\u30b9\u30c6\u30e0\u3067\u306f\u7ba1\u7406\u8005\u6a29\u9650\u304c\u5fc5\u8981\u3067\u3059\uff08\u3082\u3057\u304f\u306f\u300c\u7ba1\u7406\u8005\u3068\u3057\u3066\u5b9f\u884c\u3059\u308b\u300d\uff09\u3002 -LocalDiskPanel.errLabel.someDisksNotDetected.toolTipText=\u4e00\u90e8\u306e\u30c7\u30a3\u30b9\u30af\u304c\u691c\u51fa\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4e00\u90e8\u306e\u30b7\u30b9\u30c6\u30e0\u3067\u306f\u7ba1\u7406\u8005\u6a29\u9650\u304c\u5fc5\u8981\u3067\u3059\uff08\u3082\u3057\u304f\u306f\u300c\u7ba1\u7406\u8005\u3068\u3057\u3066\u5b9f\u884c\u3059\u308b\u300d\uff09\u3002 -LocalFilesDSProcessor.dsType=\u30ed\u30b8\u30ab\u30eb\u30d5\u30a1\u30a4\u30eb -LocalFilesDSProcessor.toString.text=\u30ed\u30b8\u30ab\u30eb\u30d5\u30a1\u30a4\u30eb -LocalFilesPanel.contentType.text=\u30ed\u30fc\u30ab\u30eb -LocalFilesPanel.moduleErr=\u30e2\u30b8\u30e5\u30fc\u30eb\u30a8\u30e9\u30fc -LocalFilesPanel.moduleErr.msg=LocalFilesPanel\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u78ba\u8a8d\u4e2d\u306b\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u30a8\u30e9\u30fc\u3092\u8d77\u3053\u3057\u307e\u3057\u305f\u3002\u3069\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u304b\u30ed\u30b0\u3067\u78ba\u8a8d\u3057\u3066\u4e0b\u3055\u3044\u3002\u4e00\u90e8\u306e\u30c7\u30fc\u30bf\u304c\u4e0d\u5b8c\u5168\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002 -MissingImageDialog.allDesc.text=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u308b\u5168\u3066\u306e\u30bf\u30a4\u30d7 -MissingImageDialog.display.title=\u6b20\u843d\u30a4\u30e1\u30fc\u30b8\u3092\u691c\u7d22 -MissingImageDialog.confDlg.noFileSel.msg=\u30a4\u30e1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb\u304c\u9078\u629e\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u30a4\u30e1\u30fc\u30b8\u3092\u898b\u3064\u3051\u308b\n\u524d\u306b\u672c\u5f53\u306b\u7d42\u4e86\u3057\u307e\u3059\u304b\uff1f -MissingImageDialog.confDlg.noFileSel.title=\u6b20\u843d\u30a4\u30e1\u30fc\u30b8 -NewCaseVisualPanel1.getName.text=\u30b1\u30fc\u30b9\u60c5\u5831 -NewCaseVisualPanel1.caseDirBrowse.selectButton.text=\u9078\u629e -NewCaseVisualPanel2.getName.text=\u4ed8\u52a0\u60c5\u5831 -NewCaseWizardAction.closeCurCase.confMsg.msg=\u3053\u306e\u30b1\u30fc\u30b9\u3092\u4fdd\u5b58\u3057\u3001\u9589\u3058\u3066\u3001\u65b0\u898f\u30b1\u30fc\u30b9\u4f5c\u6210\u3092\u5b9f\u884c\u3057\u307e\u3059\u304b\uff1f -NewCaseWizardAction.closeCurCase.confMsg.title=\u8b66\u544a\uff1a\u73fe\u5728\u306e\u30b1\u30fc\u30b9\u3092\u9589\u3058\u307e\u3059 -NewCaseWizardAction.newCase.windowTitle.text=\u65b0\u898f\u30b1\u30fc\u30b9\u60c5\u5831 -NewCaseWizardAction.getName.text=\u65b0\u898f\u30b1\u30fc\u30b9\u30a6\u30a3\u30b6\u30fc\u30c9 -NewCaseWizardPanel1.validate.errMsg.invalidSymbols=\u30b1\u30fc\u30b9\u540d\u306b\u306f\u4e0b\u8a18\u306e\u8a18\u53f7\u3092\u542b\u3081\u307e\u305b\u3093\uff1a\\ / \: * ? " < > | -NewCaseWizardPanel1.validate.errMsg.dirExists=\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea''{0}''\u306f\u65e2\u306b\u5b58\u5728\u3057\u307e\u3059\u3002 -NewCaseWizardPanel1.validate.confMsg.createDir.msg=\u30d9\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea''{0}''\u306f\u5b58\u5728\u3057\u307e\u305b\u3093\u3002\n\n\ -\u3053\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3057\u307e\u3059\u304b\uff1f -NewCaseWizardPanel1.validate.confMsg.createDir.title=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u4f5c\u6210 -NewCaseWizardPanel1.validate.errMsg.cantCreateParDir.msg=\u30a8\u30e9\u30fc\uff1a\u30b1\u30fc\u30b9\u30da\u30a2\u30ec\u30f3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea{0}\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f -NewCaseWizardPanel1.validate.errMsg.prevCreateBaseDir.msg=\u30d9\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea{0}\u306e\u4f5c\u6210\u3092\u9632\u6b62\u3055\u308c\u307e\u3057\u305f -NewCaseWizardPanel1.validate.errMsg.cantCreateDir=\u30a8\u30e9\u30fc\uff1a\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -NewCaseWizardPanel1.validate.errMsg.invalidBaseDir.msg=\u30a8\u30e9\u30fc\uff1a\u5165\u529b\u3057\u305f\u30d9\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306f\u6709\u52b9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\n\u6709\u52b9\u306a\u30d9\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002 -NewCaseWizardPanel1.createDir.errMsg.cantCreateDir.msg=\u30a8\u30e9\u30fc\uff1a\u30b1\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\n\u6709\u52b9\u306a\u30b1\u30fc\u30b9\u540d\u304a\u3088\u3073\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002 -NewCaseWizardPanel2.validate.errCreateCase.msg=\u30b1\u30fc\u30b9\u4f5c\u6210\u30a8\u30e9\u30fc -OpenRecentCasePanel.colName.caseName=\u30b1\u30fc\u30b9\u540d -OpenRecentCasePanel.colName.path=\u30d1\u30b9 -RecentCases.exception.caseIdxOutOfRange.msg=\u6700\u8fd1\u306e\u30b1\u30fc\u30b9\u30a4\u30f3\u30c7\u30c3\u30af\u30b9{0}\u306f\u7bc4\u56f2\u5916\u3067\u3059\u3002 -RecentCases.getName.text=\u6700\u8fd1\u958b\u3044\u305f\u30b1\u30fc\u30b9\u3092\u30af\u30ea\u30a2 -RecentItems.openRecentCase.msgDlg.text=\u30a8\u30e9\u30fc\uff1a\u30b1\u30fc\u30b9{0}\u306f\u5b58\u5728\u3057\u307e\u305b\u3093\u3002 -StartupWindow.title.text=\u3088\u3046\u3053\u305d -UpdateRecentCases.menuItem.clearRecentCases.text=\u6700\u8fd1\u958b\u3044\u305f\u30b1\u30fc\u30b9\u3092\u30af\u30ea\u30a2 -UpdateRecentCases.menuItem.empty=-\u7a7a\u767d- -XMLCaseManagement.create.exception.msg=\u30b1\u30fc\u30b9XML\u30d5\u30a1\u30a4\u30eb\u306e\u8a2d\u5b9a\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3001 -XMLCaseManagement.writeFile.exception.noCase.msg=\u30de\u30cd\u30b8\u30e1\u30f3\u30c8\u30d5\u30a1\u30a4\u30eb\u3092\u66f8\u304f\u5fc5\u8981\u304c\u3042\u308b\u30b1\u30fc\u30b9\u304c\u3042\u308a\u307e\u305b\u3093\u3002 -XMLCaseManagement.writeFile.exception.errWriteToFile.msg=\u30b1\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u66f8\u304d\u8fbc\u307f\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f -XMLCaseManagement.open.exception.errReadXMLFile.msg=\u30b1\u30fc\u30b9XML\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u53d6\u308a\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff1a{0} -XMLCaseManagement.open.msgDlg.notAutCase.msg=\u30a8\u30e9\u30fc\uff1aAutopsy\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb("{0}")\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\n\n\ -\u8a73\u7d30\uff1a\n\ -Autopsy\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u4ee5\u5916(at {1})\u306f\u958b\u3051\u307e\u305b\u3093\u3002 -XMLCaseManagement.open.msgDlg.notAutCase.title=\u30a8\u30e9\u30fc -ImageFilePanel.noFatOrphansCheckbox.text=FAT\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u306e\u30aa\u30fc\u30d5\u30a1\u30f3\u30d5\u30a1\u30a4\u30eb\u306f\u7121\u8996 -LocalDiskPanel.noFatOrphansCheckbox.text=FAT\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u306e\u30aa\u30fc\u30d5\u30a1\u30f3\u30d5\u30a1\u30a4\u30eb\u306f\u7121\u8996 -AddImageWizardIngestConfigPanel.CANCEL_BUTTON.text=\u30ad\u30e3\u30f3\u30bb\u30eb -ImageFilePanel.errorLabel.text=\u30a8\u30e9\u30fc\u30e9\u30d9\u30eb -LocalFilesPanel.errorLabel.text=\u30a8\u30e9\u30fc\u30e9\u30d9\u30eb -NewCaseVisualPanel1.caseParentDirWarningLabel.text=\u30a8\u30e9\u30fc\u30e9\u30d9\u30eb -NewCaseVisualPanel1.caseTypeLabel.text=\u30d9\u30fc\u30b9\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\uff1a +\u3044\u3044\u3048\u3092\u9078\u629E\u3057\u3066\u3082\u3001\u4ECA\u5F8C\u3082\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u95B2\u89A7\u3057\u3001\u30EC\u30DD\u30FC\u30C8\u751F\u6210\u304C\u3067\u304D\u307E\u3059\u304C\u3001\n\u30D5\u30A1\u30A4\u30EB\u30B3\u30F3\u30C6\u30F3\u30C4\u306E\u8868\u793A\u307E\u305F\u306F\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30D7\u30ED\u30BB\u30B9\u306E\u5B9F\u884C\u304C\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002 +Case.checkImgExist.confDlg.doesntExist.title=\u6B20\u843D\u3057\u3066\u3044\u308B\u30A4\u30E1\u30FC\u30B8 +Case.addImg.exception.msg=\u30B1\u30FC\u30B9\u306B\u30A4\u30E1\u30FC\u30B8\u3092\u8FFD\u52A0\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Case.closeCase.exception.msg=\u4F5C\u696D\u4E2D\u306E\u30B1\u30FC\u30B9\u3092\u9589\u3058\u308B\u6700\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Case.deleteCase.exception.msg=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u524A\u9664\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} +Case.deleteCase.exception.msg2=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u524A\u9664\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} +Case.updateCaseName.exception.msg=\u30B1\u30FC\u30B9\u540D\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Case.updateExaminer.exception.msg=\u8ABF\u67FB\u62C5\u5F53\u8005\u3092\u66F4\u65B0\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Case.updateCaseNum.exception.msg=\u30B1\u30FC\u30B9\u756A\u53F7\u3092\u66F4\u65B0\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Case.exception.errGetRootObj=\u30EB\u30FC\u30C8\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Case.createCaseDir.exception.existNotDir=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u65E2\u306B\u5B58\u5728\u3057\u3001\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF1A{0} +Case.createCaseDir.exception.existCantRW=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u65E2\u306B\u5B58\u5728\u3057\u3001\u8AAD\u307F\u53D6\u308A\uFF0F\u66F8\u304D\u8FBC\u307F\u304C\u3067\u304D\u307E\u305B\u3093\uFF1A{0} +Case.createCaseDir.exception.cantCreate=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\uFF1A {0} +Case.createCaseDir.exception.cantCreateCaseDir=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A {0} +Case.createCaseDir.exception.cantCreateModDir=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} +Case.createCaseDir.exception.gen=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} +CaseDeleteAction.closeConfMsg.text=\u3053\u306E\u30B1\u30FC\u30B9\u3092\u672C\u5F53\u306B\u9589\u3058\u3001\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F\n\ + \u30B1\u30FC\u30B9\u540D\uFF1A {0}\n\ + \u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\: {1} +CaseDeleteAction.closeConfMsg.title=\u8B66\u544A\uFF1A\u4F5C\u696D\u4E2D\u306E\u30B1\u30FC\u30B9\u3092\u9589\u3058\u307E\u3059 +CaseDeleteAction.msgDlg.fileInUse.msg=\u5225\u306E\u30D7\u30ED\u30B0\u30E9\u30E0\u3067\u30D5\u30A9\u30EB\u30C0\u307E\u305F\u306F\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u3044\u3066\u3044\u308B\u306E\u3067\u3001\u524A\u9664\u3092\u5B8C\u4E86\u3067\u304D\u307E\u305B\u3093\u3002\n\n\ +\u30D5\u30A9\u30EB\u30C0\u307E\u305F\u306F\u30D5\u30A1\u30A4\u30EB\u3092\u9589\u3058\u3066\u304B\u3089\u518D\u5B9F\u884C\u3059\u308B\u304B\u3001\u624B\u52D5\u3067\u30B1\u30FC\u30B9\u3092\u524A\u9664\u3057\u3066\u4E0B\u3055\u3044\u3002 +CaseDeleteAction.msgDlg.fileInUse.title=\u30A8\u30E9\u30FC\uFF1A\u30D5\u30A9\u30EB\u30C0\u304C\u4F7F\u7528\u4E2D +CaseDeleteAction.msgDlg.caseDelete.msg=\u30B1\u30FC\u30B9\u306F\u304C\u524A\u9664\u3055\u308C\u307E\u3057\u305F\u3002 +CaseOpenAction.autFilter.title={0} \u30B1\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB ( {1}) +CaseOpenAction.msgDlg.cantOpenCase.title=\u30B1\u30FC\u30B9\u3092\u958B\u304F\u969B\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +CasePropertiesAction.window.title=\u30B1\u30FC\u30B9\u30D7\u30ED\u30D1\u30C6\u30A3 +CasePropertiesForm.updateCaseName.msgDlg.empty.msg=\u30B1\u30FC\u30B9\u540D\u306F\u7A7A\u767D\u3067\u306F\u3044\u3051\u307E\u305B\u3093\u3002 +CasePropertiesForm.updateCaseName.msgDlg.empty.title=\u30A8\u30E9\u30FC +CasePropertiesForm.updateCaseName.msgDlg.invalidSymbols.msg=\u30B1\u30FC\u30B9\u540D\u306B\u306F\u6B21\u306E\u8A18\u53F7\u3092\u542B\u3081\u307E\u305B\u3093\uFF1A\\ / \: * ? " < > | +CasePropertiesForm.updateCaseName.msgDlg.invalidSymbols.title=\u30A8\u30E9\u30FC +CasePropertiesForm.updateCaseName.confMsg.msg=\u30B1\u30FC\u30B9\u540D\u3092"0}"\u304B\u3089"{1}"\u306B\u672C\u5F53\u306B\u66F4\u65B0\u3057\u307E\u3059\u304B\uFF1F +CasePropertiesForm.updateCaseName.confMsg.title=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u4F5C\u6210 +CueBannerPanel.title.text=\u6700\u8FD1\u958B\u3044\u305F\u30B1\u30FC\u30B9\u3092\u958B\u304F +GeneralFilter.rawImageDesc.text=\u30ED\u30FC\u30A4\u30E1\u30FC\u30B8(*.img, *.dd, *.001, *.aa, *.raw, *.bin) +GeneralFilter.encaseImageDesc.text=\u30A8\u30F3\u30B1\u30FC\u30B9\u30A4\u30E1\u30FC\u30B8(*.e01) +ImageDSProcessor.dsType.text=\u30A4\u30E1\u30FC\u30B8\u30D5\u30A1\u30A4\u30EB +ImageDSProcessor.allDesc.text=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u308B\u5168\u30BF\u30A4\u30D7 +ImageFilePanel.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC +ImageFilePanel.moduleErr.msg=ImageFilePanel\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +LocalDiskDSProcessor.dsType.text=\u30ED\u30FC\u30AB\u30EB\u30C7\u30A3\u30B9\u30AF +LocalDiskPanel.localDiskModel.loading.msg=\u30ED\u30FC\u30AB\u30EB\u30C7\u30A3\u30B9\u30AF\u3092\u30ED\u30FC\u30C9\u4E2D\u2026 +LocalDiskPanel.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC +LocalDiskPanel.moduleErr.msg=LocalDiskPanel\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +LocalDiskPanel.errLabel.disksNotDetected.text=\u30C7\u30A3\u30B9\u30AF\u304C\u691C\u51FA\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u4E00\u90E8\u306E\u30B7\u30B9\u30C6\u30E0\u3067\u306F\u7BA1\u7406\u8005\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\uFF08\u3082\u3057\u304F\u306F\u300C\u7BA1\u7406\u8005\u3068\u3057\u3066\u5B9F\u884C\u3059\u308B\u300D\u304C\u5FC5\u8981\uFF09\u3002 +LocalDiskPanel.errLabel.disksNotDetected.toolTipText=\u30C7\u30A3\u30B9\u30AF\u304C\u691C\u51FA\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u4E00\u90E8\u306E\u30B7\u30B9\u30C6\u30E0\u3067\u306F\u7BA1\u7406\u8005\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\uFF08\u3082\u3057\u304F\u306F\u300C\u7BA1\u7406\u8005\u3068\u3057\u3066\u5B9F\u884C\u3059\u308B\u300D\u304C\u5FC5\u8981\uFF09\u3002 +LocalDiskPanel.errLabel.drivesNotDetected.text=\u30ED\u30FC\u30AB\u30EB\u30C9\u30E9\u30A4\u30D6\u304C\u691C\u51FA\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u81EA\u52D5\u691C\u51FA\u306F\u3053\u306EOS\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u304B\u3001\u7BA1\u7406\u8005\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\u3002 +LocalDiskPanel.errLabel.drivesNotDetected.toolTipText=\u30ED\u30FC\u30AB\u30EB\u30C9\u30E9\u30A4\u30D6\u304C\u691C\u51FA\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u81EA\u52D5\u691C\u51FA\u306F\u3053\u306EOS\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u304B\u3001\u7BA1\u7406\u8005\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\u3002 +LocalDiskPanel.errLabel.someDisksNotDetected.text=\u4E00\u90E8\u306E\u30C7\u30A3\u30B9\u30AF\u304C\u691C\u51FA\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u4E00\u90E8\u306E\u30B7\u30B9\u30C6\u30E0\u3067\u306F\u7BA1\u7406\u8005\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\uFF08\u3082\u3057\u304F\u306F\u300C\u7BA1\u7406\u8005\u3068\u3057\u3066\u5B9F\u884C\u3059\u308B\u300D\uFF09\u3002 +LocalDiskPanel.errLabel.someDisksNotDetected.toolTipText=\u4E00\u90E8\u306E\u30C7\u30A3\u30B9\u30AF\u304C\u691C\u51FA\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u4E00\u90E8\u306E\u30B7\u30B9\u30C6\u30E0\u3067\u306F\u7BA1\u7406\u8005\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\uFF08\u3082\u3057\u304F\u306F\u300C\u7BA1\u7406\u8005\u3068\u3057\u3066\u5B9F\u884C\u3059\u308B\u300D\uFF09\u3002 +LocalFilesDSProcessor.dsType=\u30ED\u30B8\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB +LocalFilesDSProcessor.toString.text=\u30ED\u30B8\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB +LocalFilesPanel.contentType.text=\u30ED\u30FC\u30AB\u30EB +LocalFilesPanel.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC +LocalFilesPanel.moduleErr.msg=LocalFilesPanel\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +MissingImageDialog.allDesc.text=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u308B\u5168\u3066\u306E\u30BF\u30A4\u30D7 +MissingImageDialog.display.title=\u6B20\u843D\u30A4\u30E1\u30FC\u30B8\u3092\u691C\u7D22 +MissingImageDialog.confDlg.noFileSel.msg=\u30A4\u30E1\u30FC\u30B8\u30D5\u30A1\u30A4\u30EB\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u30A4\u30E1\u30FC\u30B8\u3092\u898B\u3064\u3051\u308B\n\u524D\u306B\u672C\u5F53\u306B\u7D42\u4E86\u3057\u307E\u3059\u304B\uFF1F +MissingImageDialog.confDlg.noFileSel.title=\u6B20\u843D\u30A4\u30E1\u30FC\u30B8 +NewCaseVisualPanel1.getName.text=\u30B1\u30FC\u30B9\u60C5\u5831 +NewCaseVisualPanel1.caseDirBrowse.selectButton.text=\u9078\u629E +NewCaseVisualPanel2.getName.text=\u4ED8\u52A0\u60C5\u5831 +NewCaseWizardAction.newCase.windowTitle.text=\u65B0\u898F\u30B1\u30FC\u30B9\u60C5\u5831 +NewCaseWizardAction.getName.text=\u65B0\u898F\u30B1\u30FC\u30B9\u30A6\u30A3\u30B6\u30FC\u30C9 +NewCaseWizardPanel1.validate.errMsg.invalidSymbols=\u30B1\u30FC\u30B9\u540D\u306B\u306F\u6B21\u306E\u8A18\u53F7\u3092\u542B\u3081\u307E\u305B\u3093\uFF1A\\ / \: * ? " < > | +NewCaseWizardPanel1.validate.errMsg.dirExists=\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA''{0}''\u306F\u65E2\u306B\u5B58\u5728\u3057\u307E\u3059\u3002 +NewCaseWizardPanel1.validate.confMsg.createDir.msg=\u30D9\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA''{0}''\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\u3002\n\n\ +\u3053\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3057\u307E\u3059\u304B\uFF1F +NewCaseWizardPanel1.validate.confMsg.createDir.title=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210 +NewCaseWizardPanel1.validate.errMsg.cantCreateParDir.msg=\u30A8\u30E9\u30FC\uFF1A\u30B1\u30FC\u30B9\u30DA\u30A2\u30EC\u30F3\u30C8\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +NewCaseWizardPanel1.validate.errMsg.prevCreateBaseDir.msg=\u30D9\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u306E\u4F5C\u6210\u3092\u9632\u6B62\u3055\u308C\u307E\u3057\u305F +NewCaseWizardPanel1.validate.errMsg.cantCreateDir=\u30A8\u30E9\u30FC\uFF1A\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +NewCaseWizardPanel1.validate.errMsg.invalidBaseDir.msg=\u30A8\u30E9\u30FC\uFF1A\u5165\u529B\u3057\u305F\u30D9\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\n\u6709\u52B9\u306A\u30D9\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u5165\u529B\u3057\u3066\u4E0B\u3055\u3044\u3002 +NewCaseWizardPanel1.createDir.errMsg.cantCreateDir.msg=\u30A8\u30E9\u30FC\uFF1A\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\n\u6709\u52B9\u306A\u30B1\u30FC\u30B9\u540D\u304A\u3088\u3073\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u5165\u529B\u3057\u3066\u4E0B\u3055\u3044\u3002 +NewCaseWizardPanel2.validate.errCreateCase.msg=\u30B1\u30FC\u30B9\u306E\u4F5C\u6210\u30A8\u30E9\u30FC +OpenRecentCasePanel.colName.caseName=\u30B1\u30FC\u30B9\u540D +OpenRecentCasePanel.colName.path=\u30D1\u30B9 +RecentCases.exception.caseIdxOutOfRange.msg=\u6700\u8FD1\u306E\u30B1\u30FC\u30B9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9{0}\u306F\u7BC4\u56F2\u5916\u3067\u3059\u3002 +RecentCases.getName.text=\u6700\u8FD1\u958B\u3044\u305F\u30B1\u30FC\u30B9\u3092\u30AF\u30EA\u30A2 +RecentItems.openRecentCase.msgDlg.text=\u30A8\u30E9\u30FC\uFF1A\u30B1\u30FC\u30B9{0}\u306F\u3082\u3046\u5B58\u5728\u3057\u307E\u305B\u3093\u3002 +StartupWindow.title.text=\u3088\u3046\u3053\u305D +UpdateRecentCases.menuItem.clearRecentCases.text=\u6700\u8FD1\u958B\u3044\u305F\u30B1\u30FC\u30B9\u3092\u30AF\u30EA\u30A2 +UpdateRecentCases.menuItem.empty=-\u7A7A\u767D- +XMLCaseManagement.create.exception.msg=\u30B1\u30FC\u30B9XML\u30D5\u30A1\u30A4\u30EB\u306E\u8A2D\u5B9A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3001 +XMLCaseManagement.writeFile.exception.noCase.msg=\u30DE\u30CD\u30B8\u30E1\u30F3\u30C8\u30D5\u30A1\u30A4\u30EB\u3092\u66F8\u304F\u5FC5\u8981\u304C\u3042\u308B\u30B1\u30FC\u30B9\u304C\u3042\u308A\u307E\u305B\u3093\u3002 +XMLCaseManagement.writeFile.exception.errWriteToFile.msg=\u30B1\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB\u3078\u306E\u66F8\u304D\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +XMLCaseManagement.open.exception.errReadXMLFile.msg=\u30B1\u30FC\u30B9XML\u30D5\u30A1\u30A4\u30EB\u306E\u8AAD\u307F\u53D6\u308A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} +XMLCaseManagement.open.msgDlg.notAutCase.msg=\u30A8\u30E9\u30FC\uFF1AAutopsy\u8A2D\u5B9A\u30D5\u30A1\u30A4\u30EB("{0}")\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\n\n\ +\u8A73\u7D30\uFF1A\n\ +Autopsy\u8A2D\u5B9A\u30D5\u30A1\u30A4\u30EB\u4EE5\u5916\u306F(at {1})\u3067\u958B\u3051\u307E\u305B\u3093\u3002 +XMLCaseManagement.open.msgDlg.notAutCase.title=\u30A8\u30E9\u30FC +ImageFilePanel.noFatOrphansCheckbox.text=FAT\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u306E\u30AA\u30FC\u30D5\u30A1\u30F3\u30D5\u30A1\u30A4\u30EB\u306F\u7121\u8996 +LocalDiskPanel.noFatOrphansCheckbox.text=FAT\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u306E\u30AA\u30FC\u30D5\u30A1\u30F3\u30D5\u30A1\u30A4\u30EB\u306F\u7121\u8996 +AddImageWizardIngestConfigPanel.CANCEL_BUTTON.text=\u30AD\u30E3\u30F3\u30BB\u30EB +ImageFilePanel.errorLabel.text=\u30A8\u30E9\u30FC\u30E9\u30D9\u30EB +LocalFilesPanel.errorLabel.text=\u30A8\u30E9\u30FC\u30E9\u30D9\u30EB +NewCaseVisualPanel1.caseTypeLabel.text=\u30B1\u30FC\u30B9\u30BF\u30A4\u30D7\uFF1A +Case.databaseConnectionInfo.error.msg=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30B5\u30FC\u30D0\u30FC\u306E\u63A5\u7D9A\u60C5\u5831\u3092\u5165\u624B\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u30C4\u30FC\u30EB\u3001\u30AA\u30D7\u30B7\u30E7\u30F3\u3001\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +Case.open.exception.multiUserCaseNotEnabled=\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u306E\u30B1\u30FC\u30B9\u304C\u6709\u52B9\u5316\u3055\u308C\u3066\u3044\u306A\u3044\u3068\u3001\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u306E\u30B1\u30FC\u30B9\u306F\u958B\u3051\u307E\u305B\u3093\u3002\u30C4\u30FC\u30EB\u3001\u30AA\u30D7\u30B7\u30E7\u30F3\u3001\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +Case.createCaseDir.exception.cantCreateReportsDir=\u30EC\u30DD\u30FC\u30C8\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} +Case.CollaborationSetup.FailNotify.ErrMsg=\u3053\u306E\u30B1\u30FC\u30B9\u3067\u4F7F\u308F\u308C\u3066\u3044\u308B\u304B\u3082\u3057\u308C\u306A\u3044\u30CE\u30FC\u30C9\u306B\u63A5\u7D9A\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +Case.CollaborationSetup.FailNotify.Title=\u63A5\u7D9A\u306B\u5931\u6557 +Case.GetCaseTypeGivenPath.Failure=\u30B1\u30FC\u30B9\u30BF\u30A4\u30D7\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +Case.metaDataFileCorrupt.exception.msg=\u30B1\u30FC\u30B9\u30E1\u30BF\u30C7\u30FC\u30BF\u30D5\u30A1\u30A4\u30EB(.aut)\u304C\u7834\u640D\u3057\u3066\u3044\u307E\u3059\u3002 +Case.deleteReports.deleteFromDiskException.log.msg=\u30C7\u30A3\u30B9\u30AF\u304B\u3089\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +Case.deleteReports.deleteFromDiskException.msg=\u30C7\u30A3\u30B9\u30AF\u304B\u3089{0}\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\n{1}\u304B\u3089\u624B\u52D5\u3067\u524A\u9664\u3067\u304D\u307E\u3059\u3002 +CaseCreateAction.msgDlg.cantCreateCase.msg=\u30B1\u30FC\u30B9\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093 +IntervalErrorReport.NewIssues=\u65B0\u898F\u306E\u30A4\u30B7\u30E5\u30FC +IntervalErrorReport.TotalIssues=\u5168\u30A4\u30B7\u30E5\u30FC +IntervalErrorReport.ErrorText=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u63A5\u7D9A\u30A8\u30E9\u30FC +GeneralFilter.virtualMachineImageDesc.text=\u4EEE\u60F3\u30DE\u30B7\u30F3(*.vmdk, *.vhd) +LocalDiskPanel.localDiskModel.nodrives.msg=\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u308B\u30C9\u30E9\u30A4\u30D6\u304C\u3042\u308A\u307E\u305B\u3093 +MissingImageDialog.ErrorSettingImage=\u30A4\u30E1\u30FC\u30B8\u30D1\u30B9\u3092\u8A2D\u5B9A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u518D\u5EA6\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +NewCaseVisualPanel1.badCredentials.text=\u4F7F\u3048\u306A\u3044\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u306E\u8A2D\u5B9A\uFF08\u30C4\u30FC\u30EB\u3001\u30AA\u30D7\u30B7\u30E7\u30F3\u3001\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\u307E\u305F\u306F\u30B5\u30FC\u30D3\u30B9\u304C\u30C0\u30A6\u30F3\u3057\u3066\u3044\u307E\u3059\u3002 +NewCaseWizardAction.databaseProblem1.text=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3092\u958B\u3051\u307E\u305B\u3093\u3002\u30B1\u30FC\u30B9\u4F5C\u6210\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3044\u307E\u3059\u3002 +NewCaseWizardAction.databaseProblem2.text=\u30A8\u30E9\u30FC +DataSourceOnCDriveError.text=\u8B66\u544A\uFF1A\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u306E\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9\u3078\u306E\u30D1\u30B9\u306F"C\:"\u30C9\u30E9\u30A4\u30D6\u306B\u3042\u308A\u307E\u3059 +NewCaseVisualPanel1.CaseFolderOnCDriveError.text=\u8B66\u544A\uFF1A\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u306E\u30B1\u30FC\u30B9\u30D5\u30A9\u30EB\u30C0\u3078\u306E\u30D1\u30B9\u306F"C\:"\u30C9\u30E9\u30A4\u30D6\u306B\u3042\u308A\u307E\u3059 +CollaborationMonitor.addingDataSourceStatus.msg={0}\u304C\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3092\u8FFD\u52A0\u4E2D +CollaborationMonitor.analyzingDataSourceStatus.msg={0}\u304C{1}\u3092\u89E3\u6790\u4E2D +NewCaseVisualPanel1.multiUserCaseRadioButton.text=\u8907\u6570\u30E6\u30FC\u30B6\u30FC +NewCaseVisualPanel1.singleUserCaseRadioButton.text=\u5358\u6570\u30E6\u30FC\u30B6\u30FC +CasePropertiesForm.lbDbType.text=\u30B1\u30FC\u30B9\u30BF\u30A4\u30D7\uFF1A +CasePropertiesForm.lbDbName.text=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u540D\uFF1A +SingleUserCaseConverter.BadDatabaseFileName=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB\u304C\u5B58\u5728\u3057\u307E\u305B\u3093\uFF01 +SingleUserCaseConverter.AlreadyMultiUser=\u30B1\u30FC\u30B9\u306F\u65E2\u306B\u8907\u6570\u30E6\u30FC\u30B6\u30FC\u3067\u3059\uFF01 +SingleUserCaseConverter.NonUniqueDatabaseName=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u540D\u304C\u30E6\u30CB\u30FC\u30AF\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002 +SingleUserCaseConverter.UnableToCopySourceImages=\u30BD\u30FC\u30B9\u30A4\u30E1\u30FC\u30B8\u3092\u30B3\u30D4\u30FC\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +SingleUserCaseConverter.CanNotOpenDatabase=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3092\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F +CloseCaseWhileIngesting.Warning=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u304C\u5B9F\u884C\u4E2D\u3067\u3059\u3002\u3053\u306E\u30B1\u30FC\u30B9\u3092\u672C\u5F53\u306B\u9589\u3058\u307E\u3059\u304B\uFF1F +CloseCaseWhileIngesting.Warning.title=\u8B66\u544A\uFF1A\u3053\u308C\u3092\u5B9F\u884C\u3059\u308C\u3070\u4F5C\u696D\u4E2D\u306E\u30B1\u30FC\u30B9\u3092\u9589\u3058\u307E\u3059 diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/Case.java b/Core/src/org/sleuthkit/autopsy/casemodule/Case.java index b9d67f8746..6d0aca0f6e 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/Case.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/Case.java @@ -93,7 +93,7 @@ import org.sleuthkit.datamodel.TskException; public class Case implements SleuthkitCase.ErrorObserver { private static final String autopsyVer = Version.getVersion(); // current version of autopsy. Change it when the version is changed - private static final String EVENT_CHANNEL_NAME = "%s-Case-Events"; + private static final String EVENT_CHANNEL_NAME = "%s-Case-Events"; //NON-NLS private static String appName = null; volatile private IntervalErrorReportData tskErrorReporter = null; private static final int MIN_SECONDS_BETWEEN_ERROR_REPORTS = 60; // No less than 60 seconds between warnings for errors @@ -218,10 +218,12 @@ public class Case implements SleuthkitCase.ErrorObserver { * This enum describes the type of case, either single-user (standalone) or * multi-user (using PostgreSql) */ + @NbBundle.Messages({"Case_caseType_singleUser=Single-user case", + "Case_caseType_multiUser=Multi-user case"}) public enum CaseType { - SINGLE_USER_CASE("Single-user case"), - MULTI_USER_CASE("Multi-user case"); + SINGLE_USER_CASE(Bundle.Case_caseType_singleUser()), + MULTI_USER_CASE(Bundle.Case_caseType_multiUser()); private final String caseType; @@ -368,7 +370,7 @@ public class Case implements SleuthkitCase.ErrorObserver { eventPublisher.openRemoteEventChannel(String.format(EVENT_CHANNEL_NAME, newCase.getTextIndexName())); currentCase.collaborationMonitor = new CollaborationMonitor(); } catch (AutopsyEventException | CollaborationMonitor.CollaborationMonitorException ex) { - logger.log(Level.SEVERE, "Failed to setup for collaboration", ex); + logger.log(Level.SEVERE, "Failed to setup for collaboration", ex); //NON-NLS MessageNotifyUtil.Notify.error(NbBundle.getMessage(Case.class, "Case.CollaborationSetup.FailNotify.Title"), NbBundle.getMessage(Case.class, "Case.CollaborationSetup.FailNotify.ErrMsg")); } } @@ -542,13 +544,13 @@ public class Case implements SleuthkitCase.ErrorObserver { String result; // Remove all non-ASCII characters - result = caseName.replaceAll("[^\\p{ASCII}]", "_"); + result = caseName.replaceAll("[^\\p{ASCII}]", "_"); //NON-NLS // Remove all control characters - result = result.replaceAll("[\\p{Cntrl}]", "_"); + result = result.replaceAll("[\\p{Cntrl}]", "_"); //NON-NLS // Remove / \ : ? space ' " - result = result.replaceAll("[ /?:'\"\\\\]", "_"); + result = result.replaceAll("[ /?:'\"\\\\]", "_"); //NON-NLS // Make it all lowercase result = result.toLowerCase(); @@ -564,7 +566,7 @@ public class Case implements SleuthkitCase.ErrorObserver { } if (result.isEmpty()) { - result = "case"; + result = "case"; //NON-NLS } return result; diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/CasePropertiesForm.java b/Core/src/org/sleuthkit/autopsy/casemodule/CasePropertiesForm.java index 99dcd8bfa2..89cbaad77a 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/CasePropertiesForm.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/CasePropertiesForm.java @@ -24,6 +24,7 @@ */ package org.sleuthkit.autopsy.casemodule; +import java.awt.*; import java.nio.file.Paths; import java.awt.event.ActionListener; import java.io.File; @@ -173,6 +174,8 @@ class CasePropertiesForm extends javax.swing.JPanel { */ @SuppressWarnings("unchecked") // //GEN-BEGIN:initComponents + @NbBundle.Messages({"CasePropertiesForm.imagesTable.path=Path", + "CasePropertiesForm.imagesTable.remove=Remove"}) private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); @@ -205,7 +208,7 @@ class CasePropertiesForm extends javax.swing.JPanel { jTextArea1.setRows(5); jScrollPane1.setViewportView(jTextArea1); - casePropLabel.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N + casePropLabel.setFont(casePropLabel.getFont().deriveFont(Font.BOLD, 24)); casePropLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); casePropLabel.setText(org.openide.util.NbBundle.getMessage(CasePropertiesForm.class, "CasePropertiesForm.casePropLabel.text")); // NOI18N @@ -227,10 +230,10 @@ class CasePropertiesForm extends javax.swing.JPanel { } }); - genInfoLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N + genInfoLabel.setFont(genInfoLabel.getFont().deriveFont(Font.BOLD, 14)); genInfoLabel.setText(org.openide.util.NbBundle.getMessage(CasePropertiesForm.class, "CasePropertiesForm.genInfoLabel.text")); // NOI18N - imgInfoLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N + imgInfoLabel.setFont(imgInfoLabel.getFont().deriveFont(Font.BOLD, 14)); imgInfoLabel.setText(org.openide.util.NbBundle.getMessage(CasePropertiesForm.class, "CasePropertiesForm.imgInfoLabel.text")); // NOI18N OKButton.setText(org.openide.util.NbBundle.getMessage(CasePropertiesForm.class, "CasePropertiesForm.OKButton.text")); // NOI18N @@ -240,7 +243,8 @@ class CasePropertiesForm extends javax.swing.JPanel { }, new String [] { - "Path", "Remove" + Bundle.CasePropertiesForm_imagesTable_path(), + Bundle.CasePropertiesForm_imagesTable_remove() } ) { boolean[] canEdit = new boolean [] { diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/CollaborationMonitor.java b/Core/src/org/sleuthkit/autopsy/casemodule/CollaborationMonitor.java index 4ea3463acc..0fb3601d88 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/CollaborationMonitor.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/CollaborationMonitor.java @@ -56,11 +56,11 @@ import org.sleuthkit.autopsy.ingest.events.DataSourceAnalysisStartedEvent; */ final class CollaborationMonitor { - private static final String EVENT_CHANNEL_NAME = "%s-Collaboration-Monitor-Events"; - private static final String COLLABORATION_MONITOR_EVENT = "COLLABORATION_MONITOR_EVENT"; + private static final String EVENT_CHANNEL_NAME = "%s-Collaboration-Monitor-Events"; //NON-NLS + private static final String COLLABORATION_MONITOR_EVENT = "COLLABORATION_MONITOR_EVENT"; //NON-NLS private static final Set CASE_EVENTS_OF_INTEREST = new HashSet<>(Arrays.asList(new String[]{Case.Events.ADDING_DATA_SOURCE.toString(), Case.Events.DATA_SOURCE_ADDED.toString(), Case.Events.ADDING_DATA_SOURCE_FAILED.toString()})); private static final int NUMBER_OF_PERIODIC_TASK_THREADS = 2; - private static final String PERIODIC_TASK_THREAD_NAME = "collab-monitor-periodic-tasks-%d"; + private static final String PERIODIC_TASK_THREAD_NAME = "collab-monitor-periodic-tasks-%d"; //NON-NLS private static final long HEARTBEAT_INTERVAL_MINUTES = 1; private static final long MAX_MISSED_HEARTBEATS = 5; private static final long STALE_TASKS_DETECTION_INTERVAL_MINUTES = 2; diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/CueBannerPanel.java b/Core/src/org/sleuthkit/autopsy/casemodule/CueBannerPanel.java index 440d0b4d20..b409e42830 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/CueBannerPanel.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/CueBannerPanel.java @@ -18,9 +18,7 @@ */ package org.sleuthkit.autopsy.casemodule; -import java.awt.Dialog; -import java.awt.Dimension; -import java.awt.Toolkit; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; @@ -79,10 +77,10 @@ public class CueBannerPanel extends javax.swing.JPanel { closeButton = new javax.swing.JButton(); jSeparator1 = new javax.swing.JSeparator(); - autopsyLogo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/welcome_logo.png"))); // NOI18N + autopsyLogo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/welcome_logo.png"))); // NOI18N NON-NLS autopsyLogo.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.autopsyLogo.text")); // NOI18N - newCaseButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/btn_icon_create_new_case.png"))); // NOI18N + newCaseButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/btn_icon_create_new_case.png"))); // NOI18N NON-NLS newCaseButton.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.newCaseButton.text")); // NOI18N newCaseButton.setBorder(null); newCaseButton.setBorderPainted(false); @@ -94,7 +92,7 @@ public class CueBannerPanel extends javax.swing.JPanel { } }); - openRecentButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/btn_icon_open_recent.png"))); // NOI18N + openRecentButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/btn_icon_open_recent.png"))); // NOI18N NON-NLS openRecentButton.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.openRecentButton.text")); // NOI18N openRecentButton.setBorder(null); openRecentButton.setBorderPainted(false); @@ -106,13 +104,13 @@ public class CueBannerPanel extends javax.swing.JPanel { } }); - createNewLabel.setFont(new java.awt.Font("Tahoma", 0, 13)); // NOI18N + createNewLabel.setFont(createNewLabel.getFont().deriveFont(Font.PLAIN, 13)); createNewLabel.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.createNewLabel.text")); // NOI18N - openRecentLabel.setFont(new java.awt.Font("Tahoma", 0, 13)); // NOI18N + openRecentLabel.setFont(openRecentLabel.getFont().deriveFont(Font.PLAIN, 13)); openRecentLabel.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.openRecentLabel.text")); // NOI18N - openCaseButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/btn_icon_open_existing.png"))); // NOI18N + openCaseButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/casemodule/btn_icon_open_existing.png"))); // NOI18N NON-NLS openCaseButton.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.openCaseButton.text")); // NOI18N openCaseButton.setBorder(null); openCaseButton.setBorderPainted(false); @@ -125,7 +123,7 @@ public class CueBannerPanel extends javax.swing.JPanel { } }); - openLabel.setFont(new java.awt.Font("Tahoma", 0, 13)); // NOI18N + openLabel.setFont(openLabel.getFont().deriveFont(Font.PLAIN, 13)); openLabel.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.openLabel.text")); // NOI18N closeButton.setText(org.openide.util.NbBundle.getMessage(CueBannerPanel.class, "CueBannerPanel.closeButton.text")); // NOI18N diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/MissingImageDialog.java b/Core/src/org/sleuthkit/autopsy/casemodule/MissingImageDialog.java index d5e5e647e5..18b2c5b8e8 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/MissingImageDialog.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/MissingImageDialog.java @@ -192,7 +192,7 @@ class MissingImageDialog extends javax.swing.JDialog { } }); - lbWarning.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N + lbWarning.setFont(lbWarning.getFont().deriveFont(Font.BOLD, 12)); lbWarning.setForeground(new java.awt.Color(244, 0, 0)); org.openide.awt.Mnemonics.setLocalizedText(lbWarning, org.openide.util.NbBundle.getMessage(MissingImageDialog.class, "MissingImageDialog.lbWarning.text")); // NOI18N lbWarning.setToolTipText(org.openide.util.NbBundle.getMessage(MissingImageDialog.class, "MissingImageDialog.lbWarning.toolTipText")); // NOI18N @@ -223,7 +223,7 @@ class MissingImageDialog extends javax.swing.JDialog { .addGap(18, 18, 18)) ); - titleLabel.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N + titleLabel.setFont(titleLabel.getFont().deriveFont(Font.BOLD, 12)); org.openide.awt.Mnemonics.setLocalizedText(titleLabel, org.openide.util.NbBundle.getMessage(MissingImageDialog.class, "MissingImageDialog.titleLabel.text")); // NOI18N titleSeparator.setForeground(new java.awt.Color(102, 102, 102)); diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseVisualPanel1.java b/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseVisualPanel1.java index 5694ba5c70..3dde0a0056 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseVisualPanel1.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseVisualPanel1.java @@ -215,7 +215,7 @@ final class NewCaseVisualPanel1 extends JPanel implements DocumentListener { caseParentDirWarningLabel = new javax.swing.JLabel(); caseTypeLabel = new javax.swing.JLabel(); - jLabel1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N + jLabel1.setFont(jLabel1.getFont().deriveFont(Font.BOLD, 14)); org.openide.awt.Mnemonics.setLocalizedText(jLabel1, org.openide.util.NbBundle.getMessage(NewCaseVisualPanel1.class, "NewCaseVisualPanel1.jLabel1.text_1")); // NOI18N org.openide.awt.Mnemonics.setLocalizedText(caseNameLabel, org.openide.util.NbBundle.getMessage(NewCaseVisualPanel1.class, "NewCaseVisualPanel1.caseNameLabel.text_1")); // NOI18N diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseWizardPanel2.java b/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseWizardPanel2.java index afbba08a6c..4712f74fe0 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseWizardPanel2.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/NewCaseWizardPanel2.java @@ -170,8 +170,8 @@ class NewCaseWizardPanel2 implements WizardDescriptor.ValidatingPanel biggestPK) { biggestPK = value; } - outputStatement.executeUpdate("INSERT INTO tsk_objects (obj_id, par_obj_id, type) VALUES (" + outputStatement.executeUpdate("INSERT INTO tsk_objects (obj_id, par_obj_id, type) VALUES (" //NON-NLS + value + "," + getNullableLong(inputResultSet, 2) + "," + inputResultSet.getInt(3) + ")"); //NON-NLS @@ -397,7 +397,7 @@ public class SingleUserCaseConverter { while (inputResultSet.next()) { outputStatement = postgreSQLConnection.createStatement(); try { - outputStatement.executeUpdate("INSERT INTO tsk_image_names (obj_id, name, sequence) VALUES (" + outputStatement.executeUpdate("INSERT INTO tsk_image_names (obj_id, name, sequence) VALUES (" //NON-NLS + inputResultSet.getLong(1) + ",'" + inputResultSet.getString(2) + "'," + inputResultSet.getInt(3) + ")"); //NON-NLS @@ -419,7 +419,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - String sql = "INSERT INTO tsk_image_info (obj_id, type, ssize, tzone, size, md5, display_name) VALUES (" + String sql = "INSERT INTO tsk_image_info (obj_id, type, ssize, tzone, size, md5, display_name) VALUES (" //NON-NLS + value + "," + getNullableInt(inputResultSet, 2) + "," + getNullableInt(inputResultSet, 3) + "," @@ -454,7 +454,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - String sql = "INSERT INTO tsk_fs_info (obj_id, img_offset, fs_type, block_size, block_count, root_inum, first_inum, last_inum, display_name) VALUES (" + String sql = "INSERT INTO tsk_fs_info (obj_id, img_offset, fs_type, block_size, block_count, root_inum, first_inum, last_inum, display_name) VALUES (" //NON-NLS + value + "," + inputResultSet.getLong(2) + "," + inputResultSet.getInt(3) + "," @@ -490,7 +490,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - outputStatement.executeUpdate("INSERT INTO tsk_files_path (obj_id, path) VALUES (" + outputStatement.executeUpdate("INSERT INTO tsk_files_path (obj_id, path) VALUES (" //NON-NLS + value + ", '" + SleuthkitCase.escapeSingleQuotes(inputResultSet.getString(2)) + "')"); //NON-NLS } catch (SQLException ex) { @@ -513,7 +513,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - String sql = "INSERT INTO tsk_files (obj_id, fs_obj_id, attr_type, attr_id, name, meta_addr, meta_seq, type, has_layout, has_path, dir_type, meta_type, dir_flags, meta_flags, size, ctime, crtime, atime, mtime, mode, uid, gid, md5, known, parent_path) VALUES (" + String sql = "INSERT INTO tsk_files (obj_id, fs_obj_id, attr_type, attr_id, name, meta_addr, meta_seq, type, has_layout, has_path, dir_type, meta_type, dir_flags, meta_flags, size, ctime, crtime, atime, mtime, mode, uid, gid, md5, known, parent_path) VALUES (" //NON-NLS + value + "," + getNullableLong(inputResultSet, 2) + "," + getNullableInt(inputResultSet, 3) + "," @@ -561,7 +561,7 @@ public class SingleUserCaseConverter { while (inputResultSet.next()) { outputStatement = postgreSQLConnection.createStatement(); try { - outputStatement.executeUpdate("INSERT INTO tsk_file_layout (obj_id, byte_start, byte_len, sequence) VALUES (" + outputStatement.executeUpdate("INSERT INTO tsk_file_layout (obj_id, byte_start, byte_len, sequence) VALUES (" //NON-NLS + inputResultSet.getLong(1) + "," + inputResultSet.getLong(2) + "," + inputResultSet.getLong(3) + "," @@ -583,7 +583,7 @@ public class SingleUserCaseConverter { Statement check = postgreSQLConnection.createStatement(); ResultSet checkResult = check.executeQuery("SELECT * FROM tsk_db_info WHERE schema_ver=" + inputResultSet.getInt(1) + " AND tsk_ver=" + inputResultSet.getInt(2)); //NON-NLS if (!checkResult.isBeforeFirst()) { // only insert if it doesn't exist - outputStatement.executeUpdate("INSERT INTO tsk_db_info (schema_ver, tsk_ver) VALUES (" + outputStatement.executeUpdate("INSERT INTO tsk_db_info (schema_ver, tsk_ver) VALUES (" //NON-NLS + getNullableInt(inputResultSet, 1) + "," + getNullableInt(inputResultSet, 2) + ")"); //NON-NLS } @@ -605,7 +605,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - String sql = "INSERT INTO tag_names (tag_name_id, display_name, description, color) VALUES (" + String sql = "INSERT INTO tag_names (tag_name_id, display_name, description, color) VALUES (" //NON-NLS + value + "," + " ? ,'" + SleuthkitCase.escapeSingleQuotes(inputResultSet.getString(3)) + "','" @@ -636,7 +636,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - outputStatement.executeUpdate("INSERT INTO reports (report_id, path, crtime, src_module_name, report_name) VALUES (" + outputStatement.executeUpdate("INSERT INTO reports (report_id, path, crtime, src_module_name, report_name) VALUES (" //NON-NLS + value + ", '" + SleuthkitCase.escapeSingleQuotes(inputResultSet.getString(2)) + "'," + inputResultSet.getInt(3) + ",'" @@ -664,7 +664,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - outputStatement.executeUpdate("INSERT INTO blackboard_artifacts (artifact_id, obj_id, artifact_type_id) VALUES (" + outputStatement.executeUpdate("INSERT INTO blackboard_artifacts (artifact_id, obj_id, artifact_type_id) VALUES (" //NON-NLS + value + "," + inputResultSet.getLong(2) + "," + inputResultSet.getLong(3) + ")"); //NON-NLS @@ -684,7 +684,7 @@ public class SingleUserCaseConverter { while (inputResultSet.next()) { try { - String sql = "INSERT INTO blackboard_attributes (artifact_id, artifact_type_id, source, context, attribute_type_id, value_type, value_byte, value_text, value_int32, value_int64, value_double) VALUES (" + String sql = "INSERT INTO blackboard_attributes (artifact_id, artifact_type_id, source, context, attribute_type_id, value_type, value_byte, value_text, value_int32, value_int64, value_double) VALUES (" //NON-NLS + inputResultSet.getLong(1) + "," + inputResultSet.getLong(2) + "," + " ? ," @@ -722,7 +722,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - String sql = "INSERT INTO tsk_vs_parts (obj_id, addr, start, length, descr, flags) VALUES (" + String sql = "INSERT INTO tsk_vs_parts (obj_id, addr, start, length, descr, flags) VALUES (" //NON-NLS + value + "," + inputResultSet.getLong(2) + "," + inputResultSet.getLong(3) + "," @@ -754,7 +754,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - outputStatement.executeUpdate("INSERT INTO tsk_vs_info (obj_id, vs_type, img_offset, block_size) VALUES (" + outputStatement.executeUpdate("INSERT INTO tsk_vs_info (obj_id, vs_type, img_offset, block_size) VALUES (" //NON-NLS + value + "," + inputResultSet.getInt(2) + "," + inputResultSet.getLong(3) + "," @@ -780,7 +780,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - String sql = "INSERT INTO tsk_files_derived (obj_id, derived_id, rederive) VALUES (" + String sql = "INSERT INTO tsk_files_derived (obj_id, derived_id, rederive) VALUES (" //NON-NLS + value + "," + inputResultSet.getLong(2) + "," + " ? )"; //NON-NLS @@ -808,7 +808,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - String sql = "INSERT INTO tsk_files_derived_method (derived_id, tool_name, tool_version, other) VALUES (" + String sql = "INSERT INTO tsk_files_derived_method (derived_id, tool_name, tool_version, other) VALUES (" //NON-NLS + value + ", '" + inputResultSet.getString(2) + "','" + inputResultSet.getString(3) + "'," @@ -838,7 +838,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - outputStatement.executeUpdate("INSERT INTO content_tags (tag_id, obj_id, tag_name_id, comment, begin_byte_offset, end_byte_offset) VALUES (" + outputStatement.executeUpdate("INSERT INTO content_tags (tag_id, obj_id, tag_name_id, comment, begin_byte_offset, end_byte_offset) VALUES (" //NON-NLS + value + "," + inputResultSet.getLong(2) + "," + inputResultSet.getLong(3) + ",'" @@ -867,7 +867,7 @@ public class SingleUserCaseConverter { if (value > biggestPK) { biggestPK = value; } - outputStatement.executeUpdate("INSERT INTO blackboard_artifact_tags (tag_id, artifact_id, tag_name_id, comment) VALUES (" + outputStatement.executeUpdate("INSERT INTO blackboard_artifact_tags (tag_id, artifact_id, tag_name_id, comment) VALUES (" //NON-NLS + value + "," + inputResultSet.getLong(2) + "," + inputResultSet.getLong(3) + ",'" @@ -1140,7 +1140,7 @@ public class SingleUserCaseConverter { * @throws SQLException if unable to open */ private static Connection getPostgreSQLConnection(ImportCaseData icd, String dbName) throws SQLException { - return DriverManager.getConnection("jdbc:postgresql://" + return DriverManager.getConnection("jdbc:postgresql://" //NON-NLS + icd.getDb().getHost() + ":" + icd.getDb().getPort() + "/" + dbName, diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/events/DataSourceAddedEvent.java b/Core/src/org/sleuthkit/autopsy/casemodule/events/DataSourceAddedEvent.java index bba2fba8c3..7eff327f14 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/events/DataSourceAddedEvent.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/events/DataSourceAddedEvent.java @@ -81,7 +81,7 @@ public final class DataSourceAddedEvent extends AutopsyEvent implements Serializ dataSource = Case.getCurrentCase().getSleuthkitCase().getContentById(id); return dataSource; } catch (IllegalStateException | TskCoreException ex) { - logger.log(Level.SEVERE, "Error doing lazy load for remote event", ex); + logger.log(Level.SEVERE, "Error doing lazy load for remote event", ex); //NON-NLS return null; } } diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/events/ReportAddedEvent.java b/Core/src/org/sleuthkit/autopsy/casemodule/events/ReportAddedEvent.java index 84121ad2de..534f6b646a 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/events/ReportAddedEvent.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/events/ReportAddedEvent.java @@ -78,7 +78,7 @@ public final class ReportAddedEvent extends AutopsyEvent implements Serializable } return report; } catch (IllegalStateException | TskCoreException ex) { - logger.log(Level.SEVERE, "Error doing lazy load for remote event", ex); + logger.log(Level.SEVERE, "Error doing lazy load for remote event", ex); //NON-NLS return null; } } diff --git a/Core/src/org/sleuthkit/autopsy/casemodule/events/TagAddedEvent.java b/Core/src/org/sleuthkit/autopsy/casemodule/events/TagAddedEvent.java index 88cbd023bb..365a3c0ff8 100644 --- a/Core/src/org/sleuthkit/autopsy/casemodule/events/TagAddedEvent.java +++ b/Core/src/org/sleuthkit/autopsy/casemodule/events/TagAddedEvent.java @@ -85,7 +85,7 @@ abstract class TagAddedEvent extends AutopsyEvent implements Seri tag = getTagByID(); return tag; } catch (IllegalStateException | TskCoreException ex) { - Logger.getLogger(TagAddedEvent.class.getName()).log(Level.SEVERE, "Error doing lazy load for remote event", ex); + Logger.getLogger(TagAddedEvent.class.getName()).log(Level.SEVERE, "Error doing lazy load for remote event", ex); //NON-NLS return null; } } diff --git a/Core/src/org/sleuthkit/autopsy/contentviewers/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/contentviewers/Bundle_ja.properties index 31cda15feb..d2bbdc2081 100644 --- a/Core/src/org/sleuthkit/autopsy/contentviewers/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/contentviewers/Bundle_ja.properties @@ -1,7 +1,7 @@ Metadata.tableRowTitle.name=\u540D\u524D Metadata.tableRowTitle.size=\u30B5\u30A4\u30BA -Metadata.tableRowTitle.fileNameAlloc=\u30D5\u30A1\u30A4\u30EB\u30A2\u30ED\u30B1\u30FC\u30B7\u30E7\u30F3\u72B6\u614B -Metadata.tableRowTitle.metadataAlloc=\u30E1\u30BF\u30C7\u30FC\u30BF\u30A2\u30ED\u30B1\u30FC\u30B7\u30E7\u30F3\u72B6\u614B +Metadata.tableRowTitle.fileNameAlloc=\u30D5\u30A1\u30A4\u30EB\u540D\u30A2\u30ED\u30B1\u30FC\u30B7\u30E7\u30F3 +Metadata.tableRowTitle.metadataAlloc=\u30E1\u30BF\u30C7\u30FC\u30BF\u30A2\u30ED\u30B1\u30FC\u30B7\u30E7\u30F3 Metadata.tableRowTitle.modified=\u4FEE\u6B63\u6E08\u307F Metadata.tableRowTitle.accessed=\u30A2\u30AF\u30BB\u30B9\u6E08\u307F Metadata.tableRowTitle.created=\u4F5C\u6210\u6E08\u307F @@ -11,9 +11,9 @@ Metadata.tableRowTitle.md5=MD5 Metadata.tableRowTitle.hashLookupResults=\u30CF\u30C3\u30B7\u30E5\u30EB\u30C3\u30AF\u30A2\u30C3\u30D7\u7D50\u679C Metadata.tableRowTitle.internalid=\u5185\u90E8ID Metadata.tableRowTitle.localPath=\u30ED\u30FC\u30AB\u30EB\u30D1\u30B9 -Metadata.title=\u30E1\u30BF\u30C7\u30FC\u30BF +Metadata.title=\u30D5\u30A1\u30A4\u30EB\u30E1\u30BF\u30C7\u30FC\u30BF Metadata.toolTip=\u30D5\u30A1\u30A4\u30EB\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u3092\u8868\u793A\u3057\u307E\u3059\u3002 -Metadata.nodeText.nonFilePassedIn=\u5165\u529B\u3055\u308C\u305F\u3082\u306E\u306F\u30D5\u30A1\u30A4\u30EB\u3067\u306F\u3042\u308A\u307E\u305B\u3093 Metadata.tableRowTitle.type=\u30BF\u30A4\u30D7 Metadata.nodeText.exceptionNotice.text=\u30D5\u30A1\u30A4\u30EB\u30E1\u30BF\u30C7\u30FC\u30BF\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A -Metadata.nodeText.text=Sleuth Kit istat\u30C4\u30FC\u30EB\u304B\u3089\uFF1A \ No newline at end of file +Metadata.nodeText.text=Sleuth Kit istat\u30C4\u30FC\u30EB\u304B\u3089\uFF1A +Metadata.nodeText.nonFilePassedIn=\u5165\u529B\u3055\u308C\u305F\u3082\u306E\u306F\u30D5\u30A1\u30A4\u30EB\u3067\u306F\u3042\u308A\u307E\u305B\u3093 \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/core/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/core/Bundle_ja.properties index ae67dfca3b..171ced6172 100644 --- a/Core/src/org/sleuthkit/autopsy/core/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/core/Bundle_ja.properties @@ -1,14 +1,31 @@ -OpenIDE-Module-Display-Category=\u57FA\u76E4 +OpenIDE-Module-Display-Category=\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3\u30FC OpenIDE-Module-Long-Description=\ - Autopsy\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30B3\u30A2\u3067\u3059\u3002\n\n\ + \u3053\u308C\u304CAutopsy\u306E\u30B3\u30A2\u30E2\u30B8\u30E5\u30FC\u30EB\u3067\u3059\u3002\n\n\ \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u307F\u3067\u5B9F\u884C\u3059\u308B\u306E\u306B\u5FC5\u8981\u306A\u4E3B\u8981\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\uFF1ARCP\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u3001\u30A6\u30A3\u30F3\u30C9\u30A6\u30A4\u30F3\u30B0GUI\u3001Sleuth Kit\u30D0\u30A4\u30F3\u30C7\u30A3\u30F3\u30B0\u3001\u30C7\u30FC\u30BF\u30E2\u30C7\u30EB\uFF0F\u30B9\u30C8\u30EC\u30FC\u30B8\u3001\u30A8\u30AF\u30B9\u30D7\u30ED\u30FC\u30E9\u3001\u7D50\u679C\u30D3\u30E5\u30FC\u30A2\u3001\u30B3\u30F3\u30C6\u30F3\u30C4\u30D3\u30E5\u30FC\u30A2\u3001\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u7528\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u3001\u30EC\u30DD\u30FC\u30C8\u751F\u6210\u3001\u30D5\u30A1\u30A4\u30EB\u691C\u7D22\u7B49\u306E\u4E3B\u8981\u30C4\u30FC\u30EB\u3002\n\n\ \u30E2\u30B8\u30E5\u30FC\u30EB\u5185\u306E\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u306B\u306F\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3001\u30D3\u30E5\u30FC\u30A2\u3001\u30EC\u30DD\u30FC\u30C8\u751F\u6210\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u958B\u767A\u7528\u306EAPI\u304C\u542B\u307E\u308C\u307E\u3059\u3002\ \u30E2\u30B8\u30E5\u30FC\u30EB\u306FAutopsy\u30D7\u30E9\u30B0\u30A4\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30E9\u30FC\u3092\u4F7F\u7528\u3057\u3001\u30D7\u30E9\u30B0\u30A4\u30F3\u3068\u3057\u3066\u5B9F\u88C5\u3067\u304D\u307E\u3059\u3002\n\ - \u3053\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306F\u30A2\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u306F\u3044\u3051\u307E\u305B\u3093\u3002\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u3066\u3044\u306A\u3051\u308C\u3070\u3001Autopsy\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\n\n\ - \u8A73\u7D30\u306F\u4E0B\u8A18\u3092\u3054\u89A7\u4E0B\u3055\u3044\u3002http\://www.sleuthkit.org/autopsy/ + \u3053\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306F\u30A2\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u3066\u3044\u306A\u3051\u308C\u3070\u3001Autopsy\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\n\n\ + \u8A73\u7D30\u306F\u3053\u3061\u3089\u3067\u3054\u78BA\u8A8D\u304F\u3060\u3055\u3044\u3002http\://www.sleuthkit.org/autopsy/ OpenIDE-Module-Name=Autopsy-\u30B3\u30A2 OpenIDE-Module-Short-Description=Autopsy\u30B3\u30A2\u30E2\u30B8\u30E5\u30FC\u30EB org_sleuthkit_autopsy_core_update_center=http\://sleuthkit.org/autopsy/updates_ja.xml Services/AutoupdateType/org_sleuthkit_autopsy_core_update_center.settings=Autopsy\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30BB\u30F3\u30BF\u30FC Installer.errorInitJavafx.msg=JavaFX\u521D\u671F\u5316\u30A8\u30E9\u30FC -Installer.errorInitJavafx.details=\u4E00\u90E8\u306E\u6A5F\u80FD\u304C\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u6B63\u3057\u3044JRE\u304C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u3066\u3044\u308B\u306E\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\uFF08Oracle JRE > 1.7.10\uFF09 \ No newline at end of file +Installer.errorInitJavafx.details=\u4E00\u90E8\u306E\u6A5F\u80FD\u304C\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u6B63\u3057\u3044JRE\u304C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u3066\u3044\u308B\u304B\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\uFF08Oracle JRE > 1.7.10\uFF09 +ServicesMonitor.failedService.notify.title=\u30B5\u30FC\u30D3\u30B9\u304C\u505C\u6B62\u3057\u3066\u3044\u307E\u3059 +ServicesMonitor.failedService.notify.msg={0}\u3078\u306E\u63A5\u7D9A\u304C\u30C0\u30A6\u30F3\u3057\u3066\u3044\u307E\u3059 +ServicesMonitor.restoredService.notify.title=\u30B5\u30FC\u30D3\u30B9\u304C\u7A3C\u50CD\u4E2D\u3067\u3059 +ServicesMonitor.restoredService.notify.msg={0}\u3078\u306E\u63A5\u7D9A\u304C\u5229\u7528\u3067\u304D\u307E\u3059 +ServicesMonitor.statusChange.notify.title=\u30B5\u30FC\u30D3\u30B9\u30B9\u30C6\u30FC\u30BF\u30B9\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8 +ServicesMonitor.statusChange.notify.msg={0}\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u306F{1} +ServicesMonitor.nullServiceName.excepton.txt=\u30EA\u30AF\u30A8\u30B9\u30C8\u3055\u308C\u305F\u30B5\u30FC\u30D3\u30B9\u306F\u30CC\u30EB\u3067\u3059 +ServicesMonitor.unknownServiceName.excepton.txt=\u30EA\u30AF\u30A8\u30B9\u30C8\u3055\u308C\u305F\u30B5\u30FC\u30D3\u30B9{0}\u306F\u4E0D\u660E\u3067\u3059 +TextConverter.convert.exception.txt=\u30C6\u30AD\u30B9\u30C8{0}\u3092hex\u30C6\u30AD\u30B9\u30C8\u306B\u5909\u63DB\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +TextConverter.convertFromHex.exception.txt=hex\u30C6\u30AD\u30B9\u30C8\u3092\u30C6\u30AD\u30B9\u30C8\u306B\u5909\u63DB\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +ServicesMonitor.KeywordSearchNull=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30B5\u30FC\u30D3\u30B9\u3092\u898B\u3064\u3051\u308C\u307E\u305B\u3093\u3067\u3057\u305F +ServicesMonitor.InvalidPortNumber=\u7121\u52B9\u306A\u30DD\u30FC\u30C8\u756A\u53F7 +ServicesMonitor.remoteCaseDatabase.displayName.text=\u8907\u6570\u306E\u30E6\u30FC\u30B6\u30FC\u306E\u30B1\u30FC\u30B9\u306E\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30B5\u30FC\u30D3\u30B9 +ServicesMonitor.remoteKeywordSearch.displayName.text=\u8907\u6570\u306E\u30E6\u30FC\u30B6\u30FC\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30B5\u30FC\u30D3\u30B9 +ServicesMonitor.messaging.displayName.text=\u30E1\u30C3\u30BB\u30FC\u30B8\u30B5\u30FC\u30D3\u30B9 +ServicesMonitor.databaseConnectionInfo.error.msg=\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u63A5\u7D9A\u60C5\u5831\u3092\u5165\u624B\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ServicesMonitor.messagingService.connErr.text=\u30E1\u30C3\u30BB\u30FC\u30B8\u30B5\u30FC\u30D3\u30B9\u306E\u63A5\u7D9A\u60C5\u5831\u3092\u5165\u624B\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties index b5aaec94cc..918e14b15a 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties @@ -68,7 +68,7 @@ AdvancedConfigurationDialog.cancelButton.text=Cancel DataResultPanel.directoryTablePath.text=directoryPath DataResultPanel.numberMatchLabel.text=0 DataResultPanel.matchLabel.text=Results -MediaViewVideoPanel.pauseButton.text=\u25ba +MediaViewVideoPanel.pauseButton.text=\u25BA MediaViewVideoPanel.progressLabel.text=00:00 DataContentViewerMedia.AccessibleContext.accessibleDescription= MediaViewVideoPanel.infoLabel.text=info @@ -161,10 +161,10 @@ MultiUserSettingsPanel.validationErrMsg.invalidMessgeServiceURI=Message service AutopsyOptionsPanel.jCheckBoxEnableProcTimeout.text= AutopsyOptionsPanel.jFormattedTextFieldProcTimeOutHrs.text=60 AutopsyOptionsPanel.jLabelProcessTimeOutUnits.text=hour(s) -AutopsyOptionsPanel.jLabelSetProcessTimeOut.text=Enable timeout to allow modules to automatically terminate after a set amount of time: +AutopsyOptionsPanel.jLabelSetProcessTimeOut.text=Enable timeout to allow modules to automatically terminate after a set amount of time\: DataContentViewerHex.goToOffsetLabel.text=Jump to Offset DataContentViewerHex.goToOffsetTextField.text= -DataContentViewerHex.goToOffsetTextField.msgDlg=Invalid Offset: {0} +DataContentViewerHex.goToOffsetTextField.msgDlg=Invalid Offset\: {0} DataContentViewerHex.setDataView.invalidOffset.negativeOffsetValue=Cannot jump to the resultant offset MultiUserSettingsPanel.tbOops.text= MultiUserSettingsPanel.lbTestDatabase.text= diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle_ja.properties index db6e5b5ecc..594de9284c 100755 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle_ja.properties @@ -15,7 +15,6 @@ DataContentViewerString.totalPageLabel.text_1=100 DataContentViewerHex.pageLabel2.text=\u30DA\u30FC\u30B8 DataContentViewerString.pageLabel2.text=\u30DA\u30FC\u30B8 Format_OperatingSystem_Value={0} \u30D0\u30FC\u30B8\u30E7\u30F3 {1} \u30A2\u30FC\u30AD\u30C6\u30AF\u30C1\u30E3 {2} -URL_ON_IMG=http\://www.sleuthkit.org/ LBL_Close=\u9589\u3058\u308B DataContentViewerString.copyMenuItem.text=\u30B3\u30D4\u30FC DataContentViewerHex.copyMenuItem.text=\u30B3\u30D4\u30FC @@ -28,8 +27,8 @@ DataContentViewerArtifact.copyMenuItem.text=\u30B3\u30D4\u30FC DataContentViewerArtifact.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629E DataContentViewerArtifact.pageLabel.text=\u7D50\u679C\uFF1A AdvancedConfigurationDialog.applyButton.text=OK -DataContentViewerString.goToPageLabel.text=\u4E0B\u8A18\u306E\u30DA\u30FC\u30B8\u3078\u79FB\u52D5\uFF1A -DataContentViewerHex.goToPageLabel.text=\u4E0B\u8A18\u306E\u30DA\u30FC\u30B8\u3078\u79FB\u52D5\uFF1A +DataContentViewerString.goToPageLabel.text=\u6B21\u306E\u30DA\u30FC\u30B8\u3078\u79FB\u52D5\uFF1A +DataContentViewerHex.goToPageLabel.text=\u6B21\u306E\u30DA\u30FC\u30B8\u3078\u79FB\u52D5\uFF1A DataContentViewerString.languageLabel.text=\u30B9\u30AF\u30EA\u30D7\u30C8\uFF1A DataContentViewerString.languageCombo.toolTipText=\u30D0\u30A4\u30CA\u30EA\u30B9\u30C8\u30EA\u30F3\u30B0\u306E\u51E6\u7406\uFF08\u62BD\u51FA\u304A\u3088\u3073\u30C7\u30B3\u30FC\u30C9\uFF09\u306B\u4F7F\u7528\u3059\u308B\u8A00\u8A9E DataResultViewerThumbnail.pageLabel.text=\u30DA\u30FC\u30B8\uFF1A @@ -37,7 +36,7 @@ DataResultViewerThumbnail.pagesLabel.text=\u30DA\u30FC\u30B8\uFF1A DataResultViewerThumbnail.imagesLabel.text=\u30A4\u30E1\u30FC\u30B8\uFF1A DataResultViewerThumbnail.imagesRangeLabel.text=- DataResultViewerThumbnail.pageNumLabel.text=- -DataResultViewerThumbnail.goToPageLabel.text=\u4E0B\u8A18\u306E\u30DA\u30FC\u30B8\u306B\u79FB\u52D5\uFF1A +DataResultViewerThumbnail.goToPageLabel.text=\u6B21\u306E\u30DA\u30FC\u30B8\u306B\u79FB\u52D5\uFF1A AdvancedConfigurationDialog.cancelButton.text=\u30AD\u30E3\u30F3\u30BB\u30EB DataResultPanel.directoryTablePath.text=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30D1\u30B9 DataResultPanel.numberMatchLabel.text=0 @@ -46,7 +45,7 @@ MediaViewVideoPanel.pauseButton.text=\u25BA MediaViewVideoPanel.progressLabel.text=00\:00 MediaViewVideoPanel.infoLabel.text=\u60C5\u5831 DataContentViewerArtifact.waitText=\u30C7\u30FC\u30BF\u3092\u53D6\u8FBC\u307F\u304A\u3088\u3073\u6E96\u5099\u4E2D\u3002\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u4E0B\u3055\u3044\u2026 -DataContentViewerArtifact.errorText=\u7D50\u679C\u306E\u53D6\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +DataContentViewerArtifact.errorText=\u7D50\u679C\u3092\u53D6\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F DataContentViewerArtifact.title=\u7D50\u679C DataContentViewerArtifact.toolTip=\u30D5\u30A1\u30A4\u30EB\u306B\u95A2\u9023\u3059\u308B\u7D50\u679C\u3092\u8868\u793A\u3057\u307E\u3059 DataContentViewerHex.goToPageTextField.msgDlg=\uFF11\u304B\u3089 {0}\u306E\u9593\u306E\u6709\u52B9\u306A\u30DA\u30FC\u30B8\u6570\u3092\u5165\u529B\u3057\u3066\u4E0B\u3055\u3044 @@ -77,12 +76,12 @@ FXVideoPanel.progress.bufferingFile={0}\u3092\u30D0\u30C3\u30D5\u30A1\u30EA\u30F FXVideoPanel.progressLabel.buffering=\u30D0\u30C3\u30D5\u30A1\u30EA\u30F3\u30B0\u4E2D\u2026 FXVideoPanel.media.unsupportedFormat=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3067\u3059\u3002 GeneralOptionsPanelController.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC -GeneralOptionsPanelController.moduleErr.msg=GeneralOptionsPanelController\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 -GstVideoPanel.cannotProcFile.err=\u30E1\u30C7\u30A4\u30A2\u30D7\u30EC\u30FC\u30E4\u30FC\u304C\u3053\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u51E6\u7406\u3067\u304D\u307E\u305B\u3093\u3002 +GeneralOptionsPanelController.moduleErr.msg=GeneralOptionsPanelController\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +GstVideoPanel.cannotProcFile.err=\u30E1\u30C7\u30A4\u30A2\u30D7\u30EC\u30FC\u30E4\u30FC\u3067\u306F\u3053\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u51E6\u7406\u3067\u304D\u307E\u305B\u3093\u3002 GstVideoPanel.initGst.gstException.msg=\u30AA\u30FC\u30C7\u30A3\u30AA\uFF0F\u30D3\u30C7\u30AA\u306E\u518D\u751F\u304A\u3088\u3073\u30D5\u30EC\u30FC\u30E0\u306E\u62BD\u51FA\u306B\u4F7F\u7528\u3059\u308BGStreamer\u306E\u521D\u671F\u5316\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u30D3\u30C7\u30AA\u304A\u3088\u3073\u30AA\u30FC\u30C7\u30A3\u30AA\u518D\u751F\u304C\u7121\u52B9\u5316\u3055\u308C\u307E\u3059\u3002 GstVideoPanel.initGst.otherException.msg=\u30AA\u30FC\u30C7\u30A3\u30AA\uFF0F\u30D3\u30C7\u30AA\u306E\u518D\u751F\u304A\u3088\u3073\u30D5\u30EC\u30FC\u30E0\u306E\u62BD\u51FA\u306B\u4F7F\u7528\u3059\u308BGStreamer\u306E\u521D\u671F\u5316\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u30D3\u30C7\u30AA\u304A\u3088\u3073\u30AA\u30FC\u30C7\u30A3\u30AA\u518D\u751F\u304C\u7121\u52B9\u5316\u3055\u308C\u307E\u3059\u3002 GstVideoPanel.setupVideo.infoLabel.text=\u524A\u9664\u3055\u308C\u305F\u30D3\u30C7\u30AA\u306E\u518D\u751F\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u5916\u90E8\u30D7\u30EC\u30FC\u30E4\u30FC\u3092\u4F7F\u7528\u3057\u3066\u4E0B\u3055\u3044\u3002 -GstVideoPanel.exception.problemFile.msg=\u30D5\u30A1\u30A4\u30EB({0})\u304B\u3089\u306F\u30D5\u30EC\u30FC\u30E0\u3092\u62BD\u51FA\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +GstVideoPanel.exception.problemFile.msg=\u30D5\u30A1\u30A4\u30EB({0})\u304B\u3089\u30D5\u30EC\u30FC\u30E0\u3092\u62BD\u51FA\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 GstVideoPanel.exception.problemPlay.msg=\u30D3\u30C7\u30AA\u30D5\u30A1\u30A4\u30EB\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u9577\u3055\u3092\u78BA\u8A8D\u4E2D\u306B\u518D\u751F\u3092\u3057\u3088\u3046\u3068\u3057\u305F\u969B\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 LBL_Description=
\n \u88FD\u54C1\u30D0\u30FC\u30B8\u30E7\u30F3\uFF1A {0} ({9})
Sleuth Kit\u30D0\u30FC\u30B8\u30E7\u30F3\uFF1A {7}
Netbeans RCP\u30D3\u30EB\u30C9\: {8}
Java\: {1}; {2}
\u30B7\u30B9\u30C6\u30E0\uFF1A {3}; {4}; {5}
\u30E6\u30FC\u30B6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u540D {6}
LBL_Copyright=
Autopsy™\u306FSleuth Kit™\u3084\u305D\u306E\u4ED6\u30C4\u30FC\u30EB\u3092\u57FA\u306B\u3057\u305F\u30C7\u30B8\u30BF\u30EB\u30FB\u30D5\u30A9\u30EC\u30F3\u30B8\u30C3\u30AF\u30FB\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u3067\u3059\u3002

Copyright © 2003-2013. \u8A73\u7D30\u306F\u4E0B\u8A18\u3092\u3054\u89A7\u4E0B\u3055\u3044\u3002 http\://www.sleuthkit.org.
@@ -117,12 +116,43 @@ AutopsyOptionsPanel.useGMTTimeRB.text=GMT\u3092\u4F7F\u7528 AutopsyOptionsPanel.useLocalTimeRB.text=\u30ED\u30FC\u30AB\u30EB\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3\u3092\u4F7F\u7528 AutopsyOptionsPanel.keepCurrentViewerRB.toolTipText=\u4F8B\u3048\u3070\u3001JPEG\u304C\u9078\u629E\u3055\u308C\u305F\u5834\u5408\u306B\u305D\u306E\u307E\u307EHEX\u30D3\u30E5\u30FC\u3092\u4F7F\u7528\u3002 AutopsyOptionsPanel.keepCurrentViewerRB.text=\u305D\u306E\u307E\u307E\u540C\u3058\u30D5\u30A1\u30A4\u30EB\u30D3\u30E5\u30FC\u30A2\u3092\u4F7F\u7528 -AutopsyOptionsPanel.restartRequiredLabel.text=\u3053\u306E\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u30FC\u3067\u306F\u6700\u5927{0}\u306E\u30D5\u30A1\u30A4\u30EB\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30B9\u30EC\u30C3\u30C9\u3092\u4F7F\u7528\u3059\u3079\u304D\u3067\u3059\u3002\u6709\u52B9\u306B\u3059\u308B\u306B\u306F\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +AutopsyOptionsPanel.restartRequiredLabel.text=\u3053\u306E\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u30FC\u3067\u306F\u6700\u5927{0}\u306E\u30D5\u30A1\u30A4\u30EB\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30B9\u30EC\u30C3\u30C9\u3092\u4F7F\u7528\u3059\u3079\u304D\u3067\u3059\u3002\u6709\u52B9\u306B\u3059\u308B\u306B\u306F\u518D\u8D77\u52D5\u304C\u5FC5\u8981\u3067\u3059\u3002 AutopsyOptionsPanel.jLabelSelectFile.text=\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E\u3059\u308B\u5834\u5408\uFF1A -AutopsyOptionsPanel.jLabelHideKnownFiles.text=\u65E2\u77E5\u30D5\u30A1\u30A4\u30EB\uFF08NIST NSRL\u5185\u306E\uFF09\u3092\u4E0B\u8A18\u306B\u96A0\u3059\uFF1A +AutopsyOptionsPanel.jLabelHideKnownFiles.text=\u65E2\u77E5\u30D5\u30A1\u30A4\u30EB\uFF08NIST NSRL\u5185\u306E\uFF09\u3092\u6B21\u306B\u96A0\u3059\uFF1A AutopsyOptionsPanel.jLabelTimeDisplay.text=\u30A2\u30A4\u30C6\u30E0\u3092\u8868\u793A\u3059\u308B\u5834\u5408\uFF1A AutopsyOptionsPanel.jLabelNumThreads.text=\u30D5\u30A1\u30A4\u30EB\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u306B\u4F7F\u7528\u3059\u308B\u30B9\u30EC\u30C3\u30C9\u6570\uFF1A FXVideoPanel.progress.bufferingCancelled=\u30E1\u30C7\u30A3\u30A2\u306E\u30D0\u30C3\u30D5\u30A1\u30EA\u30F3\u30B0\u304C\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F FXVideoPanel.progress.bufferingInterrupted=\u30E1\u30C7\u30A3\u30A2\u306E\u30D0\u30C3\u30D5\u30A1\u30EA\u30F3\u30B0\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3057\u305F FXVideoPanel.progress.errorWritingVideoToDisk=\u30D3\u30C7\u30AA\u3092\u30C7\u30A3\u30B9\u30AF\u3078\u66F8\u304D\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -URL_ON_HELP=http\://sleuthkit.org/autopsy/docs/user-docs/3.1/ +OptionsCategory_Name_Multi_User_Settings=\u8907\u6570\u306E\u30E6\u30FC\u30B6\u30FC +OptionsCategory_Keywords_Multi_User_Options=\u8907\u6570\u306E\u30E6\u30FC\u30B6\u30FC\u30AA\u30D7\u30B7\u30E7\u30F3 +MultiUserSettingsPanel.lbSolrSettings.text=Solr\u8A2D\u5B9A +MultiUserSettingsPanel.cbEnableMultiUser.text=\u8907\u6570\u306E\u30E6\u30FC\u30B6\u30FC\u30B1\u30FC\u30B9\u3092\u6709\u52B9\u5316 +MultiUserSettingsPanel.lbDatabaseSettings.text=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u8A2D\u5B9A +MultiUserSettingsPanel.validationErrMsg.incomplete=\u5168\u3066\u306E\u30D0\u30EA\u30E5\u30FC\u3092\u5165\u529B +MultiUserSettingsPanel.nonWindowsOs.msg=Windows\u3067\u3057\u304B\u8907\u6570\u306E\u30E6\u30FC\u30B6\u30FC\u7248\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093 +MultiUserSettingsPanel.validationErrMsg.invalidDatabasePort=\u7121\u52B9\u306A\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30DD\u30FC\u30C8\u756A\u53F7 +MultiUserSettingsPanel.validationErrMsg.invalidMessageServicePort=\u7121\u52B9\u306A\u30E1\u30C3\u30BB\u30FC\u30B8\u30B5\u30FC\u30D3\u30B9\u30DD\u30FC\u30C8\u756A\u53F7 +MultiUserSettingsPanel.validationErrMsg.invalidIndexingServerPort=\u7121\u52B9\u306ASolr\u30B5\u30FC\u30D0\u30FC\u30DD\u30FC\u30C8\u756A\u53F7 +MultiUserSettingsPanel.validationErrMsg.invalidMessgeServiceURI=\u7121\u52B9\u306A\u30E1\u30C3\u30BB\u30FC\u30B8\u30B5\u30FC\u30D3\u30B9\u30DB\u30B9\u30C8\u3084\u30DD\u30FC\u30C8\u756A\u53F7 +AutopsyOptionsPanel.jLabelProcessTimeOutUnits.text=\u6642\u9593 +AutopsyOptionsPanel.jLabelSetProcessTimeOut.text=\u4E00\u5B9A\u306E\u6642\u9593\u304C\u904E\u304E\u305F\u5F8C\u306B\u81EA\u52D5\u7684\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u505C\u6B62\u3067\u304D\u308B\u3088\u3046\u306B\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8\u3092\u6709\u52B9\u5316\uFF1A +DataContentViewerHex.goToOffsetLabel.text=\u30AA\u30D5\u30BB\u30C3\u30C8\u306B\u30B8\u30E3\u30F3\u30D7 +DataContentViewerHex.goToOffsetTextField.msgDlg=\u7121\u52B9\u306A\u30AA\u30D5\u30BB\u30C3\u30C8\uFF1A{0} +DataContentViewerHex.setDataView.invalidOffset.negativeOffsetValue=\u8A08\u7B97\u3055\u308C\u305F\u30AA\u30D5\u30BB\u30C3\u30C8\u306B\u30B8\u30E3\u30F3\u30D7\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +MultiUserSettingsPanel.bnTestDatabase.text=\u30C6\u30B9\u30C8 +MultiUserSettingsPanel.tbDbHostname.toolTipText=\u30DB\u30B9\u30C8\u540D\u307E\u305F\u306FIP\u30A2\u30C9\u30EC\u30B9 +MultiUserSettingsPanel.tbDbPort.toolTipText=\u30DD\u30FC\u30C8\u756A\u53F7 +MultiUserSettingsPanel.tbDbUsername.toolTipText=\u30E6\u30FC\u30B6\u30FC\u540D +MultiUserSettingsPanel.tbDbPassword.toolTipText=\u30D1\u30B9\u30EF\u30FC\u30C9 +MultiUserSettingsPanel.bnTestSolr.text=\u30C6\u30B9\u30C8 +MultiUserSettingsPanel.tbSolrHostname.toolTipText=\u30DB\u30B9\u30C8\u540D\u307E\u305F\u306FIP\u30A2\u30C9\u30EC\u30B9 +MultiUserSettingsPanel.tbSolrPort.toolTipText=\u30DD\u30FC\u30C8\u756A\u53F7 +MultiUserSettingsPanel.bnTestMessageService.text=\u30C6\u30B9\u30C8 +MultiUserSettingsPanel.lbMessageServiceSettings.text=ActiveMQ\u30E1\u30C3\u30BB\u30FC\u30B8\u30B5\u30FC\u30D3\u30B9\u8A2D\u5B9A +MultiUserSettingsPanel.tbMsgPort.toolTipText=\u30DD\u30FC\u30C8\u756A\u53F7 +MultiUserSettingsPanel.tbMsgUsername.toolTipText=\u30E6\u30FC\u30B6\u30FC\u540D\uFF08\u30AA\u30D7\u30B7\u30E7\u30CA\u30EB\uFF09 +MultiUserSettingsPanel.tbMsgPassword.toolTipText=\u30D1\u30B9\u30EF\u30FC\u30C9\uFF08\u30AA\u30D7\u30B7\u30E7\u30CA\u30EB\uFF09 +MultiUserSettingsPanel.tbMsgHostname.toolTipText=\u30DB\u30B9\u30C8\u540D\u307E\u305F\u306FIP\u30A2\u30C9\u30EC\u30B9 +MultiUserSettingsPanel.KeywordSearchNull=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30B5\u30FC\u30D3\u30B9\u3092\u898B\u3064\u3051\u308C\u3089\u308C\u307E\u305B\u3093 +MultiUserSettingsPanel.InvalidPortNumber=\u7121\u52B9\u306A\u30DD\u30FC\u30C8\u756A\u53F7 diff --git a/Core/src/org/sleuthkit/autopsy/coreutils/Bundle.properties b/Core/src/org/sleuthkit/autopsy/coreutils/Bundle.properties index 2202e10ecb..643a4b75f1 100644 --- a/Core/src/org/sleuthkit/autopsy/coreutils/Bundle.properties +++ b/Core/src/org/sleuthkit/autopsy/coreutils/Bundle.properties @@ -23,5 +23,5 @@ Process Virtual Memory\: {2} StringExtract.illegalStateException.cannotInit.msg=Unicode table not properly initialized, cannot instantiate StringExtract ImageUtils.GetOrGenerateThumbnailTask.loadingThumbnailFor=Loading thumbnail for {0} ImageUtils.GetOrGenerateThumbnailTask.generatingPreviewFor=Generating preview for {0} -ImageUtils.ReadImageTask.mesage.text=Reading image: {0} +ImageUtils.ReadImageTask.mesage.text=Reading image\: {0} VideoUtils.genVideoThumb.progress.text=extracting temporary file {0} diff --git a/Core/src/org/sleuthkit/autopsy/coreutils/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/coreutils/Bundle_ja.properties index 47329f1599..861bb54da9 100644 --- a/Core/src/org/sleuthkit/autopsy/coreutils/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/coreutils/Bundle_ja.properties @@ -3,7 +3,7 @@ JLNK.noPrefPath.text=\u512A\u5148\u7684\u306B\u4F7F\u7528\u3059\u308B\u30D1\u30B PlatformUtil.nameUnknown=\u4E0D\u660E PlatformUtil.verUnknown=\u4E0D\u660E PlatformUtil.archUnknown=\u4E0D\u660E -PlatformUtil.jrePath.jreDir.msg=\u57CB\u3081\u8FBC\u307E\u308C\u305FJRE\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304C\u4E0B\u8A18\u3067\u767A\u898B\u3055\u308C\u307E\u3057\u305F\uFF1A{0} +PlatformUtil.jrePath.jreDir.msg=\u57CB\u3081\u8FBC\u307E\u308C\u305FJRE\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304C\u767A\u898B\u3055\u308C\u307E\u3057\u305F\uFF1A{0} PlatformUtil.jrePath.usingJavaPath.msg=JAVA\u30D0\u30A4\u30CA\u30EA\u30D1\u30B9\u3092\u4F7F\u7528\uFF1A{0} PlatformUtil.getPID.sigarNotInit.msg=PID\u3092\u5165\u624B\u3067\u304D\u307E\u305B\u3093\u3001Sigar\u304C\u521D\u671F\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093 PlatformUtil.getPID.gen.msg=PID\u3092\u5165\u624B\u3067\u304D\u307E\u305B\u3093\u3001{0} @@ -11,8 +11,8 @@ PlatformUtil.getJavaPID.sigarNotInit.msg=JAVA\u30D7\u30ED\u30BB\u30B9\u306EPID\u PlatformUtil.getJavaPID.gen.msg=\u30AF\u30A8\u30EA\u30FC\u306EPID\u304C\u5165\u624B\u3067\u304D\u307E\u305B\u3093\uFF1A{0}, {1} PlatformUtil.getJavaPIDs.sigarNotInit=JAVA\u30D7\u30ED\u30BB\u30B9\u306EPID\u304C\u5165\u624B\u3067\u304D\u307E\u305B\u3093\u3001Sigar\u304C\u521D\u671F\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093 PlatformUtil.getJavaPIDs.gen.msg=\u30AF\u30A8\u30EA\u30FC\u306EPID\u304C\u5165\u624B\u3067\u304D\u307E\u305B\u3093\uFF1A{0}, {1} -PlatformUtil.killProcess.sigarNotInit.msg=PID\u3092\u4F7F\u7528\u3057\u3066\u30D7\u30ED\u30BB\u30B9\u3092\u5F37\u5236\u4FEE\u4E86\u3067\u304D\u307E\u305B\u3093\u3001Sigar\u304C\u521D\u671F\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 -PlatformUtil.killProcess.gen.msg=\u30D7\u30ED\u30BB\u30B9\u3092\u5F37\u5236\u4FEE\u4E86\u3067\u304D\u307E\u305B\u3093\uFF1A {0}, {1} +PlatformUtil.killProcess.sigarNotInit.msg=PID\u3092\u4F7F\u7528\u3057\u3066\u30D7\u30ED\u30BB\u30B9\u3092\u5F37\u5236\u7D42\u4E86\u3067\u304D\u307E\u305B\u3093\u3001Sigar\u304C\u521D\u671F\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 +PlatformUtil.killProcess.gen.msg=\u30D7\u30ED\u30BB\u30B9\u3092\u5F37\u5236\u7D42\u4E86\u3067\u304D\u307E\u305B\u3093\uFF1A {0}, {1} PlatformUtil.getProcVmUsed.sigarNotInit.msg=\u4F7F\u7528\u4E2D\u306E\u4EEE\u60F3\u30E1\u30E2\u30EA\u91CF\u3092\u78BA\u8A8D\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3001Sigar\u304C\u521D\u671F\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 PlatformUtil.getProcVmUsed.gen.msg=\u4F7F\u7528\u4E2D\u306E\u4EEE\u60F3\u30E1\u30E2\u30EA\u91CF\u3092\u78BA\u8A8D\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3001{0} PlatformUtil.getJvmMemInfo.usageText=JVM\u30D2\u30FC\u30D7\u4F7F\u7528\u72B6\u6CC1\uFF1A{0}\u3001JVM\u975E\u30D2\u30FC\u30D7\u4F7F\u7528\u72B6\u6CC1\uFF1A{1} @@ -20,4 +20,8 @@ PlatformUtil.getPhysicalMemInfo.usageText=\u7269\u7406\u30E1\u30E2\u30EA\u4F7F\u PlatformUtil.getAllMemUsageInfo.usageText={0}\n\ {1}\n\ \u30D7\u30ED\u30BB\u30B9\u4EEE\u60F3\u30E1\u30E2\u30EA\uFF1A{2} -StringExtract.illegalStateException.cannotInit.msg=\u30E6\u30CB\u30B3\u30FC\u30C9\u30C6\u30FC\u30D6\u30EB\u304C\u6B63\u3057\u304F\u521D\u671F\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3001StringExtract\u3092\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5316\u3067\u304D\u307E\u305B\u3093 \ No newline at end of file +StringExtract.illegalStateException.cannotInit.msg=\u30E6\u30CB\u30B3\u30FC\u30C9\u30C6\u30FC\u30D6\u30EB\u304C\u6B63\u3057\u304F\u521D\u671F\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3001StringExtract\u3092\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5316\u3067\u304D\u307E\u305B\u3093 +ImageUtils.GetOrGenerateThumbnailTask.loadingThumbnailFor={0}\u306E\u30B5\u30E0\u30CD\u30FC\u30EB\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D +ImageUtils.GetOrGenerateThumbnailTask.generatingPreviewFor={0}\u306E\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u4F5C\u6210\u4E2D +ImageUtils.ReadImageTask.mesage.text={0}\u3092\u8AAD\u307F\u53D6\u308A\u4E2D +VideoUtils.genVideoThumb.progress.text=\u4E00\u6642\u30D5\u30A1\u30A4\u30EB{0}\u3092\u62BD\u51FA\u4E2D \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/datamodel/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/datamodel/Bundle_ja.properties index 7a2330d36b..bd7cfe8b23 100644 --- a/Core/src/org/sleuthkit/autopsy/datamodel/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/datamodel/Bundle_ja.properties @@ -13,7 +13,7 @@ AbstractAbstractFileNode.knownColLbl=\u65E2\u77E5 AbstractAbstractFileNode.inHashsetsColLbl=HashSet\u306B\u5B58\u5728 AbstractAbstractFileNode.md5HashColLbl=MD5\u30CF\u30C3\u30B7\u30E5 AbstractContentChildren.CreateTSKNodeVisitor.exception.noNodeMsg=\u6307\u5B9A\u3055\u308C\u305FSleuthkitItem\u306E\u30CE\u30FC\u30C9\u304C\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u305B\u3093 -AbstractContentChildren.createAutopsyNodeVisitor.exception.noNodeMsg=\u6307\u5B9A\u3055\u308C\u305F\u8868\u793A\u53EF\u80FD\u306A\u30A2\u30A4\u30C6\u30E0\u306E\u30CE\u30FC\u30C9\u304C\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u305B\u3093 +AbstractContentChildren.createAutopsyNodeVisitor.exception.noNodeMsg=\u6307\u5B9A\u3055\u308C\u305F\u8868\u793A\u53EF\u80FD\u306A\u30A2\u30A4\u30C6\u30E0(DisplayableItem)\u306E\u30CE\u30FC\u30C9\u304C\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u305B\u3093 AbstractContentNode.exception.cannotChangeSysName.msg=\u30B7\u30B9\u30C6\u30E0\u540D\u3092\u5909\u66F4\u3067\u304D\u307E\u305B\u3093\u3002 AbstractFsContentNode.noDesc.text=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 ArtifactStringContent.getStr.srcFilePath.text=\u30BD\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9 @@ -68,8 +68,8 @@ DeletedContent.deletedContentsNode.name=\u524A\u9664\u3055\u308C\u305F\u30D5\u30 DeletedContent.createSheet.name.name=\u540D\u524D DeletedContent.createSheet.name.displayName=\u540D\u524D DeletedContent.createSheet.name.desc=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 -DeletedContent.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 -DeletedContent.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 +DeletedContent.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 +DeletedContent.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 DeletedContent.createSheet.filterType.desc=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 DeletedContent.createKeys.maxObjects.msg=\u8868\u793A\u53EF\u80FD\u306A\u6570\u3088\u308A\u3082\u591A\u304F\u306E\u524A\u9664\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u304C\u5B58\u5728\u3057\u307E\u3059\u3002\u6700\u521D\u306E{0}\u306E\u524A\u9664\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002 DeletedContent.createNodeForKey.typeNotSupported.msg=\u3053\u306E\u30BF\u30A4\u30D7\u306E\u8868\u793A\u53EF\u80FD\u306A\u30A2\u30A4\u30C6\u30E0\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\uFF1A{0} @@ -96,8 +96,8 @@ FileSize.fileSizeRootNode.name=\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA FileSize.createSheet.name.name=\u540D\u524D FileSize.createSheet.name.displayName=\u540D\u524D FileSize.createSheet.name.desc=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 -FileSize.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 -FileSize.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 +FileSize.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 +FileSize.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 FileSize.createSheet.filterType.desc=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 FileSize.exception.notSupported.msg=\u3053\u306E\u30BF\u30A4\u30D7\u306E\u8868\u793A\u53EF\u80FD\u306A\u30A2\u30A4\u30C6\u30E0\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\uFF1A{0} FileTypeChildren.exception.notSupported.msg=\u3053\u306E\u30BF\u30A4\u30D7\u306E\u8868\u793A\u53EF\u80FD\u306A\u30A2\u30A4\u30C6\u30E0\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\uFF1A{0} @@ -106,14 +106,14 @@ FileTypeExtensionFilters.tskVideoFilter.text=\u30D3\u30C7\u30AA FileTypeExtensionFilters.tskAudioFilter.text=\u30AA\u30FC\u30C7\u30A3\u30AA FileTypeExtensionFilters.tskArchiveFilter.text=\u30A2\u30FC\u30AB\u30A4\u30D6 FileTypeExtensionFilters.tskDocumentFilter.text=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8 -FileTypeExtensionFilters.tskExecFilter.text=\u5B9F\u884C\u53EF\u80FD +FileTypeExtensionFilters.tskExecFilter.text=\u5B9F\u884C\u30D5\u30A1\u30A4\u30EB FileTypeExtensionFilters.autDocHtmlFilter.text=HTML FileTypeExtensionFilters.autDocOfficeFilter.text=\u30AA\u30D5\u30A3\u30B9 FileTypeExtensionFilters.autoDocPdfFilter.text=PDF FileTypeExtensionFilters.autDocTxtFilter.text=\u30D7\u30EC\u30FC\u30F3\u30C6\u30AD\u30B9\u30C8 FileTypeExtensionFilters.autDocRtfFilter.text=\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8 -FileTypeNode.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 -FileTypeNode.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 +FileTypeNode.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 +FileTypeNode.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 FileTypeNode.createSheet.filterType.desc=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 FileTypeNode.createSheet.fileExt.name=\u30D5\u30A1\u30A4\u30EB\u62E1\u5F35\u5B50 FileTypeNode.createSheet.fileExt.displayName=\u30D5\u30A1\u30A4\u30EB\u62E1\u5F35\u5B50 @@ -131,7 +131,7 @@ ImageNode.createSheet.name.name=\u540D\u524D ImageNode.createSheet.name.displayName=\u540D\u524D ImageNode.createSheet.name.desc=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 Installer.exception.tskVerStringNull.msg=Sleuth Kit JNI\u30C6\u30B9\u30C8\u30B3\u30FC\u30EB\u3067\u306F\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u304C\u3001\u30D0\u30FC\u30B8\u30E7\u30F3\u30B9\u30C8\u30EA\u30F3\u30B0\u306F\u30CC\u30EB\u3067\u3057\u305F\uFF01 -Installer.tskLibErr.msg=Sleuth Kit JNI\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u30C6\u30B9\u30C8\u30B3\u30FC\u30EB\u304C\u5931\u6557\u3057\u307E\u3057\u305F\uFF1A\n\n\u8A73\u7D30\uFF1A {0} +Installer.tskLibErr.msg=Sleuth Kit JNI\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u30C6\u30B9\u30C8\u30B3\u30FC\u30EB\u304C\u5931\u6557\u3057\u307E\u3057\u305F\uFF01\n\n\u8A73\u7D30\uFF1A {0} Installer.tskLibErr.err=\u81F4\u547D\u7684\u30A8\u30E9\u30FC\uFF01 InterestingHits.interestingItems.text=\u7591\u308F\u3057\u3044\u30A2\u30A4\u30C6\u30E0 InterestingHits.displayName.text=\u7591\u308F\u3057\u3044\u30A2\u30A4\u30C6\u30E0 @@ -185,10 +185,10 @@ RecentFiles.aut3dayFilter.displayName.text=\u6700\u7D42\u65E5 - \uFF13 RecentFiles.aut4dayFilter.displayName.text=\u6700\u7D42\u65E5 - \uFF14 RecentFiles.aut5dayFilter.displayName.text=\u6700\u7D42\u65E5 - \uFF15 RecentFiles.aut6dayFilter.displayName.text=\u6700\u7D42\u65E5 - \uFF16 -RecentFilesFilterChildren.exception.defaultVisit.msg=\u3053\u306E\u30BF\u30A4\u30D7\u306E\u8868\u793A\u3067\u304D\u308B\u30A2\u30A4\u30C6\u30E0 +RecentFilesFilterChildren.exception.defaultVisit.msg=\u3053\u306E\u30BF\u30A4\u30D7\u306E\u8868\u793A\u3067\u304D\u308B\u30A2\u30A4\u30C6\u30E0\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\uFF1A{0} Installer.exception.taskVerStringBang.msg=Sleuth Kit JNI\u30C6\u30B9\u30C8\u30B3\u30FC\u30EB\u3067\u306F\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u304C\u3001\u30D0\u30FC\u30B8\u30E7\u30F3\u30B9\u30C8\u30EA\u30F3\u30B0\u306F""\u3067\u3057\u305F\uFF01 -RecentFilesFilterNode.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 -RecentFilesFilterNode.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30BF\u30A4\u30D7 +RecentFilesFilterNode.createSheet.filterType.name=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 +RecentFilesFilterNode.createSheet.filterType.displayName=\u30D5\u30A3\u30EB\u30BF\u30FC\u30BF\u30A4\u30D7 RecentFilesFilterNode.createSheet.filterType.desc=\u8AAC\u660E\u304C\u3042\u308A\u307E\u305B\u3093 RecentFilesNode.createSheet.name.name=\u540D\u524D RecentFilesNode.createSheet.name.displayName=\u540D\u524D @@ -260,9 +260,30 @@ ReportNode.createdTimeProperty.desc=\u30BF\u30A4\u30E0\u30EC\u30DD\u30FC\u30C8\u ReportNode.createdTimeProperty.displayName=\u4F5C\u6210\u65E5\u6642 ReportNode.createdTimeProperty.name=\u4F5C\u6210\u65E5\u6642 ReportNode.pathProperty.desc=\u30EC\u30DD\u30FC\u30C8\u30D5\u30A1\u30A4\u30EB\u306E\u30ED\u30FC\u30AB\u30EB\u30D1\u30B9 -ReportNode.pathProperty.displayName=\u30EC\u30DD\u30FC\u30C8\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9 -ReportNode.pathProperty.name=\u30EC\u30DD\u30FC\u30C8\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9 +ReportNode.pathProperty.displayName=\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9\u3092\u30EC\u30DD\u30FC\u30C8 +ReportNode.pathProperty.name=\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9\u3092\u30EC\u30DD\u30FC\u30C8 ReportNode.sourceModuleNameProperty.desc=\u30EC\u30DD\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u305F\u30E2\u30B8\u30E5\u30FC\u30EB\u540D ReportNode.sourceModuleNameProperty.displayName=\u30BD\u30FC\u30B9\u30E2\u30B8\u30E5\u30FC\u30EB\u540D ReportNode.sourceModuleNameProperty.name=\u30BD\u30FC\u30B9\u30E2\u30B8\u30E5\u30FC\u30EB\u540D -ReportsListNode.displayName=\u30EC\u30DD\u30FC\u30C8 \ No newline at end of file +ReportsListNode.displayName=\u30EC\u30DD\u30FC\u30C8 +AbstractAbstractFileNode.mimeType=MIME\u30BF\u30A4\u30D7 +ContentTagNode.createSheet.fileModifiedTime.name=\u4FEE\u6B63\u65E5\u6642 +ContentTagNode.createSheet.fileModifiedTime.displayName=\u4FEE\u6B63\u65E5\u6642 +ContentTagNode.createSheet.fileChangedTime.name=\u5909\u66F4\u65E5\u6642 +ContentTagNode.createSheet.fileChangedTime.displayName=\u5909\u66F4\u65E5\u6642 +ContentTagNode.createSheet.fileAccessedTime.name=\u30A2\u30AF\u30BB\u30B9\u65E5\u6642 +ContentTagNode.createSheet.fileAccessedTime.displayName=\u30A2\u30AF\u30BB\u30B9\u65E5\u6642 +ContentTagNode.createSheet.fileCreatedTime.name=\u4F5C\u6210\u65E5\u6642 +ContentTagNode.createSheet.fileCreatedTime.displayName=\u4F5C\u6210\u65E5\u6642 +ContentTagNode.createSheet.fileSize.name=\u30B5\u30A4\u30BA +ContentTagNode.createSheet.fileSize.displayName=\u30B5\u30A4\u30BA +LocalFileNode.viewFileInDir.text=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u5185\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u8868\u793A +ReportNode.reportNameProperty.name=\u30EC\u30DD\u30FC\u30C8\u540D +ReportNode.reportNameProperty.displayName=\u30EC\u30DD\u30FC\u30C8\u540D +ReportNode.reportNameProperty.desc=\u30EC\u30DD\u30FC\u30C8\u306E\u540D\u524D +DeleteReportAction.actionDisplayName.singleReport=\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664 +DeleteReportAction.actionDisplayName.multipleReports=\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664 +DeleteReportAction.actionPerformed.showConfirmDialog.single.msg=\uFF11\u3064\u306E\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F +DeleteReportAction.actionPerformed.showConfirmDialog.multiple.msg={0}\u306E\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F +DeleteReportAction.actionPerformed.showConfirmDialog.checkbox.msg=\u30C7\u30A3\u30B9\u30AF\u304B\u3089\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664\u3059\u308B\u5834\u5408\u306F\u30C1\u30A7\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +DeleteReportAction.actionPerformed.showConfirmDialog.title=\u524A\u9664\u3092\u78BA\u5B9A\u3059\u308B \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/diagnostics/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/diagnostics/Bundle_ja.properties index 09ec101d1d..860af87697 100644 --- a/Core/src/org/sleuthkit/autopsy/diagnostics/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/diagnostics/Bundle_ja.properties @@ -2,14 +2,14 @@ CTL_PerformancePanelAction=\u30D1\u30D5\u30A9\u30FC\u30DE\u30F3\u30B9\u8A3A\u65A PerformancePanel.cpuTest.basemsg=CPU\u30C6\u30B9\u30C8\u5B9F\u884C\u4E2D PerformancePanel.cpuTest.cpuLabel.MBHashedPerSec.text=\uFF11\u79D2\u3054\u3068\u306B{0}MB\u30CF\u30C3\u30B7\u30E5\u5B8C\u4E86 PerformancePanel.cpuTest.cpuLabel.md5AlgNotFound.text=MD5\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F -PerformancePanel.dbTest.dbLabel.errPerformQuery.text=\u30AF\u30A8\u30EA\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +PerformancePanel.dbTest.dbLabel.errPerformQuery.text=\u30AF\u30A8\u30EA\u3092\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F PerformancePanel.dbTest.dbLabel.recordsPerSec.text=\uFF11\u79D2\u3054\u3068\u306B{0}\u30EC\u30B3\u30FC\u30C9 -PerformancePanel.dbTest.status.running=DB\u30C6\u30B9\u30C8\u5B9F\u884C\u4E2D +PerformancePanel.dbTest.status.running=DB\u30C6\u30B9\u30C8\u3092\u5B9F\u884C\u4E2D PerformancePanel.done.statusMsg.err.text=\u30A8\u30E9\u30FC\uFF1A{0} -PerformancePanel.fileReadLabel.errMakeFileReader.text=\u30D5\u30A1\u30A4\u30EB\u30EA\u30FC\u30C0\u30FC\u4F5C\u6210\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +PerformancePanel.fileReadLabel.errMakeFileReader.text=\u30D5\u30A1\u30A4\u30EB\u30EA\u30FC\u30C0\u30FC\u3092\u4F5C\u6210\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F PerformancePanel.fileReadLabel.imgPathNotExist.text=\u30A4\u30E1\u30FC\u30B8\u30D1\u30B9\u304C\u5B58\u5728\u3057\u307E\u305B\u3093 PerformancePanel.FileReadTest.fileReadLabel.skipped.text=\u30B9\u30AD\u30C3\u30D7\u3055\u308C\u307E\u3057\u305F -PerformancePanel.FileReadTest.statusMsg.runningFileReadTest.text=\u30D5\u30A1\u30A4\u30EB\u30EA\u30FC\u30C7\u30A3\u30F3\u30B0\u30C6\u30B9\u30C8\u5B9F\u884C\u4E2D +PerformancePanel.FileReadTest.statusMsg.runningFileReadTest.text=\u30D5\u30A1\u30A4\u30EB\u30EA\u30FC\u30C7\u30A3\u30F3\u30B0\u30C6\u30B9\u30C8\u3092\u5B9F\u884C\u4E2D PerformancePanel.imgTest.statusMsg.runningImgReadTest.text=\u30A4\u30E1\u30FC\u30B8\u30EA\u30FC\u30C7\u30A3\u30F3\u30B0\u30C6\u30B9\u30C8\u5B9F\u884C\u4E2D PerformancePanel.jLabel1.text=\u30A4\u30E1\u30FC\u30B8\u30EA\u30FC\u30C7\u30A3\u30F3\u30B0\uFF1A PerformancePanel.jLabel2.text=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30EA\u30FC\u30C7\u30A3\u30F3\u30B0\uFF1A diff --git a/Core/src/org/sleuthkit/autopsy/directorytree/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/directorytree/Bundle_ja.properties index 7066ffa42c..c8b8a6fd91 100644 --- a/Core/src/org/sleuthkit/autopsy/directorytree/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/directorytree/Bundle_ja.properties @@ -1,11 +1,11 @@ -CTL_DirectoryTreeTopComponent=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc -HINT_DirectoryTreeTopComponent=\u3053\u308c\u306f\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u306e\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u3059 -OpenIDE-Module-Name=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc -FileSystemDetailsPanel.imgOffsetLabel.text=\u30a4\u30e1\u30fc\u30b8\u30aa\u30d5\u30bb\u30c3\u30c8\uff1a -FileSystemDetailsPanel.fsTypeLabel.text=\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u30bf\u30a4\u30d7\uff1a -FileSystemDetailsPanel.genInfoLabel.text=\u30d5\u30a1\u30a4\u30eb\u4e00\u822c\u60c5\u5831 -FileSystemDetailsPanel.jLabel2.text=\u30d0\u30a4\u30c8 -FileSystemDetailsPanel.jLabel3.text=\u30d0\u30a4\u30c8 +CTL_DirectoryTreeTopComponent=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30C4\u30EA\u30FC +HINT_DirectoryTreeTopComponent=\u3053\u308C\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30C4\u30EA\u30FC\u306E\u30A6\u30A3\u30F3\u30C9\u30A6\u3067\u3059 +OpenIDE-Module-Name=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30C4\u30EA\u30FC +FileSystemDetailsPanel.imgOffsetLabel.text=\u30A4\u30E1\u30FC\u30B8\u30AA\u30D5\u30BB\u30C3\u30C8\uFF1A +FileSystemDetailsPanel.fsTypeLabel.text=\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u30BF\u30A4\u30D7\uFF1A +FileSystemDetailsPanel.genInfoLabel.text=\u30D5\u30A1\u30A4\u30EB\u4E00\u822C\u60C5\u5831 +FileSystemDetailsPanel.jLabel2.text=\u30D0\u30A4\u30C8 +FileSystemDetailsPanel.jLabel3.text=\u30D0\u30A4\u30C8 FileSystemDetailsPanel.fsTypeValue.text=... FileSystemDetailsPanel.imgOffsetValue.text=... FileSystemDetailsPanel.volumeIDValue.text=... @@ -14,80 +14,80 @@ FileSystemDetailsPanel.blockCountValue.text=... FileSystemDetailsPanel.rootInumValue.text=... FileSystemDetailsPanel.firstInumValue.text=... FileSystemDetailsPanel.lastInumValue.text=... -FileSystemDetailsPanel.jLabel1.text=\u30d5\u30a1\u30a4\u30eb\u8a73\u7d30\u60c5\u5831 -FileSystemDetailsPanel.volumeIDLabel.text=\u30dc\u30ea\u30e5\u30fc\u30e0ID\uff1a -FileSystemDetailsPanel.blockSizeLabel.text=\u30d6\u30ed\u30c3\u30af\u30b5\u30a4\u30ba\uff1a -FileSystemDetailsPanel.blockCountLabel.text=\u30d6\u30ed\u30c3\u30af\u6570\uff1a -FileSystemDetailsPanel.rootInumLabel.text=\u30eb\u30fc\u30c8\u30e1\u30bf\u30c7\u30fc\u30bf\u30a8\u30f3\u30c8\u30ea\u30fc\uff1a -FileSystemDetailsPanel.firstInumLabel.text=\u6700\u521d\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u30a8\u30f3\u30c8\u30ea\u30fc\uff1a -FileSystemDetailsPanel.lastInumLabel.text=\u6700\u5f8c\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u30a8\u30f3\u30c8\u30ea\u30fc\uff1a +FileSystemDetailsPanel.jLabel1.text=\u30D5\u30A1\u30A4\u30EB\u8A73\u7D30\u60C5\u5831 +FileSystemDetailsPanel.volumeIDLabel.text=\u30DC\u30EA\u30E5\u30FC\u30E0ID\uFF1A +FileSystemDetailsPanel.blockSizeLabel.text=\u30D6\u30ED\u30C3\u30AF\u30B5\u30A4\u30BA\uFF1A +FileSystemDetailsPanel.blockCountLabel.text=\u30D6\u30ED\u30C3\u30AF\u6570\uFF1A +FileSystemDetailsPanel.rootInumLabel.text=\u30EB\u30FC\u30C8\u30E1\u30BF\u30C7\u30FC\u30BF\u30A8\u30F3\u30C8\u30EA\u30FC\uFF1A +FileSystemDetailsPanel.firstInumLabel.text=\u6700\u521D\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30A8\u30F3\u30C8\u30EA\u30FC\uFF1A +FileSystemDetailsPanel.lastInumLabel.text=\u6700\u5F8C\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u30A8\u30F3\u30C8\u30EA\u30FC\uFF1A FileSystemDetailsPanel.OKButton.text=OK -VolumeDetailsPanel.volumeIDLabel.text=\u30dc\u30ea\u30e5\u30fc\u30e0ID\uff1a +VolumeDetailsPanel.volumeIDLabel.text=\u30DC\u30EA\u30E5\u30FC\u30E0ID\uFF1A VolumeDetailsPanel.volumeIDValue.text=... VolumeDetailsPanel.startValue.text=... VolumeDetailsPanel.lengthValue.text=... VolumeDetailsPanel.descValue.text=... VolumeDetailsPanel.flagsValue.text=... -VolumeDetailsPanel.startLabel.text=\u6700\u521d\u306e\u30bb\u30af\u30bf\u30fc\uff1a -VolumeDetailsPanel.lengthLabel.text=\u30bb\u30af\u30bf\u30fc\u306e\u9577\u3055\uff1a -VolumeDetailsPanel.descLabel.text=\u8aac\u660e\uff1a -VolumeDetailsPanel.flagsLabel.text=\u30d5\u30e9\u30b0\uff1a -VolumeDetailsPanel.jLabel1.text=\u30dc\u30ea\u30e5\u30fc\u30e0\u4e00\u822c\u60c5\u5831 +VolumeDetailsPanel.startLabel.text=\u6700\u521D\u306E\u30BB\u30AF\u30BF\u30FC\uFF1A +VolumeDetailsPanel.lengthLabel.text=\u30BB\u30AF\u30BF\u30FC\u306E\u9577\u3055\uFF1A +VolumeDetailsPanel.descLabel.text=\u8AAC\u660E\uFF1A +VolumeDetailsPanel.flagsLabel.text=\u30D5\u30E9\u30B0\uFF1A +VolumeDetailsPanel.jLabel1.text=\u30DC\u30EA\u30E5\u30FC\u30E0\u4E00\u822C\u60C5\u5831 VolumeDetailsPanel.OKButton.text=OK -ImageDetailsPanel.imageInfoLabel.text=\u30a4\u30e1\u30fc\u30b8\u60c5\u5831 -ImageDetailsPanel.imgNameLabel.text=\u540d\u524d\uff1a +ImageDetailsPanel.imageInfoLabel.text=\u30A4\u30E1\u30FC\u30B8\u60C5\u5831 +ImageDetailsPanel.imgNameLabel.text=\u540D\u524D\uFF1A ImageDetailsPanel.imgNameValue.text=... -ImageDetailsPanel.imgTypeLabel.text=\u30bf\u30a4\u30d7\uff1a +ImageDetailsPanel.imgTypeLabel.text=\u30BF\u30A4\u30D7\uFF1A ImageDetailsPanel.imgTypeValue.text=... ImageDetailsPanel.OKButton.text=OK -ImageDetailsPanel.imgSectorSizeLabel.text=\u30bb\u30af\u30bf\u30fc\u30b5\u30a4\u30ba\uff1a +ImageDetailsPanel.imgSectorSizeLabel.text=\u30BB\u30AF\u30BF\u30FC\u30B5\u30A4\u30BA\uFF1A ImageDetailsPanel.imgSectorSizeValue.text=... ImageDetailsPanel.imgTotalSizeValue.text=... -ImageDetailsPanel.imgTotalSizeLabel.text=\u5408\u8a08\u30b5\u30a4\u30ba\uff1a +ImageDetailsPanel.imgTotalSizeLabel.text=\u5408\u8A08\u30B5\u30A4\u30BA\uFF1A ImageDetailsPanel.imgHashValue.text=... -ImageDetailsPanel.imgHashLabel.text=\u30cf\u30c3\u30b7\u30e5\u5024\uff1a -ChangeViewAction.menuItem.view=\u30d3\u30e5\u30fc +ImageDetailsPanel.imgHashLabel.text=\u30CF\u30C3\u30B7\u30E5\u5024\uFF1A +ChangeViewAction.menuItem.view=\u30D3\u30E5\u30FC ChangeViewAction.menuItem.view.hex=HEX -ChangeViewAction.menuItem.view.string=\u30b9\u30c8\u30ea\u30f3\u30b0 -DataResultFilterNode.action.viewFileInDir.text=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u5185\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u8868\u793a -DataResultFilterNode.action.viewSrcFileInDir.text=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u5185\u306e\u30bd\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u3092\u8868\u793a -DataResultFilterNode.action.viewInNewWin.text=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u306b\u8868\u793a -DataResultFilterNode.action.openInExtViewer.text=\u5916\u90e8\u30d3\u30e5\u30fc\u30a2\u3067\u958b\u304f -DataResultFilterNode.action.searchFilesSameMd5.text=\u540c\u3058MD5\u30cf\u30c3\u30b7\u30e5\u3092\u6301\u3064\u30d5\u30a1\u30a4\u30eb\u3092\u691c\u7d22 -DataResultFilterNode.action.viewInDir.text=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30fc\u306b\u8868\u793a -DirectoryTreeFilterNode.action.openFileSrcByAttr.text=\u5c5e\u6027\u306b\u3088\u308b\u30d5\u30a1\u30a4\u30eb\u691c\u7d22\u3092\u958b\u304f -DirectoryTreeFilterNode.action.runIngestMods.text=\u30a4\u30f3\u30b8\u30a7\u30b9\u30c8\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u5b9f\u884c -DirectoryTreeTopComponent.title.text=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30ea\u30b9\u30c6\u30a3\u30f3\u30b0 -DirectoryTreeTopComponent.action.viewArtContent.text=\u30a2\u30fc\u30c6\u30a3\u30d5\u30a1\u30af\u30c8\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a -DirectoryTreeTopComponent.moduleErr=\u30e2\u30b8\u30e5\u30fc\u30eb\u30a8\u30e9\u30fc -DirectoryTreeTopComponent.moduleErr.msg=DirectoryTreeTopComponent\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3092\u78ba\u8a8d\u4e2d\u306b\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u30a8\u30e9\u30fc\u3092\u8d77\u3053\u3057\u307e\u3057\u305f\u3002\u3069\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u304b\u30ed\u30b0\u3067\u78ba\u8a8d\u3057\u3066\u4e0b\u3055\u3044\u3002\u4e00\u90e8\u306e\u30c7\u30fc\u30bf\u304c\u4e0d\u5b8c\u5168\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002 -ExplorerNodeActionVisitor.action.imgDetails.title=\u30a4\u30e1\u30fc\u30b8\u8a73\u7d30 -ExplorerNodeActionVisitor.action.extUnallocToSingleFiles=\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u5185\u306e\u30c7\u30fc\u30bf\u3092\u8907\u6570\u306e\u30b7\u30f3\u30b0\u30eb\u30d5\u30a1\u30a4\u30eb\u306b\u62bd\u51fa -ExplorerNodeActionVisitor.action.fileSystemDetails.title=\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u8a73\u7d30 -ExplorerNodeActionVisitor.action.volumeDetails.title=\u30dc\u30ea\u30e5\u30fc\u30e0\u8a73\u7d30 -ExplorerNodeActionVisitor.action.extUnallocToSingleFile=\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u5185\u306e\u30c7\u30fc\u30bf\u3092\u4e00\u3064\u306e\u30b7\u30f3\u30b0\u30eb\u30d5\u30a1\u30a4\u30eb\u306b\u62bd\u51fa -ExplorerNodeActionVisitor.volDetail.noVolMatchErr=\u30a8\u30e9\u30fc\uff1a\u4e00\u81f4\u3059\u308b\u30dc\u30ea\u30e5\u30fc\u30e0\u304c\u3042\u308a\u307e\u305b\u3093\u3002 -ExplorerNodeActionVisitor.imgDetail.noVolMatchesErr=\u30a8\u30e9\u30fc\uff1a\u4e00\u81f4\u3059\u308b\u30dc\u30ea\u30e5\u30fc\u30e0\u304c\u3042\u308a\u307e\u305b\u3093\u3002 -ExplorerNodeActionVisitor.exception.probGetParent.text={0}\: {1}\u304b\u3089\u30da\u30a2\u30ec\u30f3\u30c8\u3092\u53d6\u5f97\u3059\u308b\u969b\u306b\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f -ExtractAction.title.extractFiles.text=\u30d5\u30a1\u30a4\u30eb\u3092\u62bd\u51fa -ExtractAction.extractFiles.cantCreateFolderErr.msg=\u6307\u5b9a\u3055\u308c\u305f\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -ExtractAction.confDlg.destFileExist.msg=\u4fdd\u5b58\u5148\u306e\u30d5\u30a1\u30a4\u30eb{0}\u306f\u65e2\u306b\u5b58\u5728\u3057\u307e\u3059\u3001\u4e0a\u66f8\u304d\u3057\u307e\u3059\u304b\uff1f -ExtractAction.confDlg.destFileExist.title=\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3057\u307e\u3059 -ExtractAction.msgDlg.cantOverwriteFile.msg=\u65e2\u5b58\u30d5\u30a1\u30a4\u30eb{0}\u3092\u4e0a\u66f8\u304d\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f -ExtractAction.notifyDlg.noFileToExtr.msg=\u62bd\u51fa\u3067\u304d\u308b\u30d5\u30a1\u30a4\u30eb\u304c\u3042\u308a\u307e\u305b\u3093\u3002 -ExtractAction.progress.extracting=\u62bd\u51fa\u4e2d -ExtractAction.progress.cancellingExtraction={0}\uff08\u30ad\u30e3\u30f3\u30bb\u30eb\u4e2d\u2026\uff09 -ExtractAction.done.notifyMsg.fileExtr.text=\u30d5\u30a1\u30a4\u30eb\u304c\u62bd\u51fa\u3055\u308c\u307e\u3057\u305f\u3002 -ExtractUnallocAction.notifyMsg.unallocAlreadyBeingExtr.msg=\u3053\u306e\u30a4\u30e1\u30fc\u30b8\u306e\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u306e\u30c7\u30fc\u30bf\u306f\u65e2\u306b\u62bd\u51fa\u4e2d\u3067\u3059\u3002\u5225\u306e\u30a4\u30e1\u30fc\u30b8\u3092\u9078\u629e\u3057\u3066\u4e0b\u3055\u3044\u3002 -ExtractUnallocAction.msgDlg.folderDoesntExist.msg=\u30d5\u30a9\u30eb\u30c0\u306f\u5b58\u5728\u3057\u307e\u305b\u3093\u3002\u7d9a\u884c\u3059\u308b\u524d\u306b\u6709\u52b9\u306a\u30d5\u30a9\u30eb\u30c0\u3092\u9078\u629e\u3057\u3066\u4e0b\u3055\u3044\u3002 -ExtractUnallocAction.dlgTitle.selectDirToSaveTo.msg=\u4fdd\u5b58\u5148\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u9078\u629e\u3057\u3066\u4e0b\u3055\u3044 -ExtractUnallocAction.confDlg.unallocFileAlreadyExist.msg=\u3053\u306e\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u306e\u30d5\u30a1\u30a4\u30eb{0}\u306f\u65e2\u306b\u5b58\u5728\u3057\u307e\u3059\u3002\u65e2\u5b58\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u7f6e\u304d\u63db\u3048\u307e\u3059\u304b\uff1f -ExtractUnallocAction.progress.extractUnalloc.title=\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u306e\u30c7\u30fc\u30bf\u3092\u62bd\u51fa\u4e2d -ExtractUnallocAction.progress.displayName.cancelling.text=\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u306e\u30c7\u30fc\u30bf\u3092\u62bd\u51fa\u4e2d\uff08\u30ad\u30e3\u30f3\u30bb\u30eb\u4e2d\u2026\uff09 -ExtractUnallocAction.processing.counter.msg=\u51e6\u7406\u4e2d\u3000{0}\uff0f{1} MBs -ExtractUnallocAction.done.notifyMsg.completedExtract.title=\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u306e\u62bd\u51fa\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002 -ExtractUnallocAction.done.notifyMsg.completedExtract.msg=\u30d5\u30a1\u30a4\u30eb\u306f{0}\u3078\u62bd\u51fa\u3055\u308c\u307e\u3057\u305f -ExtractUnallocAction.done.errMsg.title=\u62bd\u51fa\u30a8\u30e9\u30fc -ExtractUnallocAction.done.errMsg.msg=\u672a\u5272\u308a\u5f53\u3066\u9818\u57df\u306e\u62bd\u51fa\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff1a{0} -DirectoryTreeFilterNode.action.collapseAll.text=\u3059\u3079\u3066\u30b3\u30e9\u30d7\u30b9 -ExtractAction.done.notifyMsg.extractErr=\u4e0b\u8a18\u306e\u30d5\u30a1\u30a4\u30eb\u306e\u62bd\u51fa\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff1a {0} \ No newline at end of file +ChangeViewAction.menuItem.view.string=\u30B9\u30C8\u30EA\u30F3\u30B0 +DataResultFilterNode.action.viewFileInDir.text=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u5185\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u8868\u793A +DataResultFilterNode.action.viewSrcFileInDir.text=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u5185\u306E\u30BD\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB\u3092\u8868\u793A +DataResultFilterNode.action.viewInNewWin.text=\u65B0\u898F\u30A6\u30A3\u30F3\u30C9\u30A6\u306B\u8868\u793A +DataResultFilterNode.action.openInExtViewer.text=\u5916\u90E8\u30D3\u30E5\u30FC\u30A2\u3067\u958B\u304F +DataResultFilterNode.action.searchFilesSameMd5.text=\u540C\u3058MD5\u30CF\u30C3\u30B7\u30E5\u3092\u6301\u3064\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22 +DataResultFilterNode.action.viewInDir.text=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30FC\u306B\u8868\u793A +DirectoryTreeFilterNode.action.openFileSrcByAttr.text=\u5C5E\u6027\u306B\u3088\u308B\u30D5\u30A1\u30A4\u30EB\u691C\u7D22\u3092\u958B\u304F +DirectoryTreeFilterNode.action.runIngestMods.text=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u5B9F\u884C +DirectoryTreeTopComponent.title.text=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30EA\u30B9\u30C6\u30A3\u30F3\u30B0 +DirectoryTreeTopComponent.action.viewArtContent.text=\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u30B3\u30F3\u30C6\u30F3\u30C4\u3092\u8868\u793A +DirectoryTreeTopComponent.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC +DirectoryTreeTopComponent.moduleErr.msg=DirectoryTreeTopComponent\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +ExplorerNodeActionVisitor.action.imgDetails.title=\u30A4\u30E1\u30FC\u30B8\u8A73\u7D30 +ExplorerNodeActionVisitor.action.extUnallocToSingleFiles=\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u5185\u306E\u30C7\u30FC\u30BF\u3092\u30B7\u30F3\u30B0\u30EB\u30D5\u30A1\u30A4\u30EB\u306B\u62BD\u51FA +ExplorerNodeActionVisitor.action.fileSystemDetails.title=\u30D5\u30A1\u30A4\u30EB\u30B7\u30B9\u30C6\u30E0\u8A73\u7D30 +ExplorerNodeActionVisitor.action.volumeDetails.title=\u30DC\u30EA\u30E5\u30FC\u30E0\u8A73\u7D30 +ExplorerNodeActionVisitor.action.extUnallocToSingleFile=\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u5185\u306E\u30C7\u30FC\u30BF\u3092\u30B7\u30F3\u30B0\u30EB\u30D5\u30A1\u30A4\u30EB\u306B\u62BD\u51FA +ExplorerNodeActionVisitor.volDetail.noVolMatchErr=\u30A8\u30E9\u30FC\uFF1A\u4E00\u81F4\u3059\u308B\u30DC\u30EA\u30E5\u30FC\u30E0\u304C\u3042\u308A\u307E\u305B\u3093\u3002 +ExplorerNodeActionVisitor.imgDetail.noVolMatchesErr=\u30A8\u30E9\u30FC\uFF1A\u4E00\u81F4\u3059\u308B\u30DC\u30EA\u30E5\u30FC\u30E0\u304C\u3042\u308A\u307E\u305B\u3093\u3002 +ExplorerNodeActionVisitor.exception.probGetParent.text={0}\: {1}\u304B\u3089\u30DA\u30A2\u30EC\u30F3\u30C8\u3092\u53D6\u5F97\u3059\u308B\u969B\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractAction.title.extractFiles.text=\u30D5\u30A1\u30A4\u30EB\u3092\u62BD\u51FA +ExtractAction.extractFiles.cantCreateFolderErr.msg=\u6307\u5B9A\u3055\u308C\u305F\u30D5\u30A9\u30EB\u30C0\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +ExtractAction.confDlg.destFileExist.msg=\u4FDD\u5B58\u5148\u306E\u30D5\u30A1\u30A4\u30EB{0}\u306F\u65E2\u306B\u5B58\u5728\u3057\u307E\u3059\u3001\u4E0A\u66F8\u304D\u3057\u307E\u3059\u304B\uFF1F +ExtractAction.confDlg.destFileExist.title=\u30D5\u30A1\u30A4\u30EB\u304C\u5B58\u5728\u3057\u307E\u3059 +ExtractAction.msgDlg.cantOverwriteFile.msg=\u65E2\u5B58\u30D5\u30A1\u30A4\u30EB{0}\u3092\u4E0A\u66F8\u304D\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +ExtractAction.notifyDlg.noFileToExtr.msg=\u62BD\u51FA\u3067\u304D\u308B\u30D5\u30A1\u30A4\u30EB\u304C\u3042\u308A\u307E\u305B\u3093\u3002 +ExtractAction.progress.extracting=\u62BD\u51FA\u4E2D +ExtractAction.progress.cancellingExtraction={0}\uFF08\u30AD\u30E3\u30F3\u30BB\u30EB\u4E2D\u2026\uFF09 +ExtractAction.done.notifyMsg.fileExtr.text=\u30D5\u30A1\u30A4\u30EB\u304C\u62BD\u51FA\u3055\u308C\u307E\u3057\u305F\u3002 +ExtractUnallocAction.notifyMsg.unallocAlreadyBeingExtr.msg=\u3053\u306E\u30A4\u30E1\u30FC\u30B8\u306E\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u306E\u30C7\u30FC\u30BF\u306F\u65E2\u306B\u62BD\u51FA\u4E2D\u3067\u3059\u3002\u5225\u306E\u30A4\u30E1\u30FC\u30B8\u3092\u9078\u629E\u3057\u3066\u4E0B\u3055\u3044\u3002 +ExtractUnallocAction.msgDlg.folderDoesntExist.msg=\u30D5\u30A9\u30EB\u30C0\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\u3002\u7D9A\u884C\u3059\u308B\u524D\u306B\u6709\u52B9\u306A\u30D5\u30A9\u30EB\u30C0\u3092\u9078\u629E\u3057\u3066\u4E0B\u3055\u3044\u3002 +ExtractUnallocAction.dlgTitle.selectDirToSaveTo.msg=\u4FDD\u5B58\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u9078\u629E\u3057\u3066\u4E0B\u3055\u3044 +ExtractUnallocAction.confDlg.unallocFileAlreadyExist.msg=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u306E\u30D5\u30A1\u30A4\u30EB{0}\u306F\u65E2\u306B\u5B58\u5728\u3057\u307E\u3059\u3002\u65E2\u5B58\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u7F6E\u304D\u63DB\u3048\u307E\u3059\u304B\uFF1F +ExtractUnallocAction.progress.extractUnalloc.title=\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u306E\u30C7\u30FC\u30BF\u3092\u62BD\u51FA\u4E2D +ExtractUnallocAction.progress.displayName.cancelling.text=\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u306E\u30C7\u30FC\u30BF\u3092\u62BD\u51FA\u4E2D\uFF08\u30AD\u30E3\u30F3\u30BB\u30EB\u4E2D\u2026\uFF09 +ExtractUnallocAction.processing.counter.msg={0}\uFF0F{1} MBs\u3092\u51E6\u7406\u4E2D +ExtractUnallocAction.done.notifyMsg.completedExtract.title=\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u306E\u62BD\u51FA\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F\u3002 +ExtractUnallocAction.done.notifyMsg.completedExtract.msg=\u30D5\u30A1\u30A4\u30EB\u306F{0}\u3078\u62BD\u51FA\u3055\u308C\u307E\u3057\u305F +ExtractUnallocAction.done.errMsg.title=\u62BD\u51FA\u30A8\u30E9\u30FC +ExtractUnallocAction.done.errMsg.msg=\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u3092\u62BD\u51FA\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} +DirectoryTreeFilterNode.action.collapseAll.text=\u3059\u3079\u3066\u30B3\u30E9\u30D7\u30B9 +ExtractAction.done.notifyMsg.extractErr=\u4E0B\u8A18\u306E\u30D5\u30A1\u30A4\u30EB\u306E\u62BD\u51FA\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A {0} \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/events/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/events/Bundle_ja.properties new file mode 100644 index 0000000000..ec61e857ea --- /dev/null +++ b/Core/src/org/sleuthkit/autopsy/events/Bundle_ja.properties @@ -0,0 +1,10 @@ +MessageServiceConnectionInfo.ConnectionCheck.Everything=\u30DB\u30B9\u30C8\u540D\u3001\u30DD\u30FC\u30C8\u756A\u53F7\u3001\u30E6\u30FC\u30B6\u30FC\u540D\u307E\u305F\u306F\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u7121\u52B9\u3067\u3059 +MessageServiceConnectionInfo.ConnectionCheck.Hostname=\u7121\u52B9\u306A\u30DB\u30B9\u30C8\u540D +MessageServiceConnectionInfo.ConnectionCheck.Port=\u7121\u52B9\u306A\u30DD\u30FC\u30C8\u756A\u53F7 +MessageServiceConnectionInfo.ConnectionCheck.Username=\u7121\u52B9\u306A\u30E6\u30FC\u30B6\u30FC\u540D +MessageServiceConnectionInfo.ConnectionCheck.Password=\u7121\u52B9\u306A\u30D1\u30B9\u30EF\u30FC\u30C9 +MessageServiceConnectionInfo.ConnectionCheck.UsernameAndPassword=\u7121\u52B9\u306A\u30E6\u30FC\u30B6\u30FC\u540D\u307E\u305F\u306F\u30D1\u30B9\u30EF\u30FC\u30C9 +MessageServiceConnectionInfo.ConnectionCheck.HostnameOrPort=\u7121\u52B9\u306A\u30DB\u30B9\u30C8\u540D\u307E\u305F\u306F\u30DD\u30FC\u30C8\u756A\u53F7 +MessageServiceConnectionInfo.MissingHostname=\u30DB\u30B9\u30C8\u540D\u304C\u5FC5\u8981\u3067\u3059\u3002 +MessageServiceConnectionInfo.MissingUsername=\u30E6\u30FC\u30B6\u30FC\u540D\u304C\u5FC5\u8981\u3067\u3059\u3002 +MessageServiceConnectionInfo.MissingPassword=\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u5FC5\u8981\u3067\u3059\u3002 \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/externalresults/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/externalresults/Bundle_ja.properties index 3099e29273..b9702f4b10 100644 --- a/Core/src/org/sleuthkit/autopsy/externalresults/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/externalresults/Bundle_ja.properties @@ -9,7 +9,7 @@ ExternalResults.Artifact.addAttribute.exception.msg2.text=\u5F15\u6570\u5024\u30 ExternalResultsImporter.findFileInCaseDatabase.errMsg1.text=\u30DA\u30A2\u30EC\u30F3\u30C8\u30D5\u30A1\u30A4\u30EB\u30D1\u30B9{0}\u304C\u66D6\u6627\u3067\u3059\u3002\u6700\u521D\u306B\u898B\u3064\u3051\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u5229\u7528\u3057\u307E\u3059\u3002 ExternalResultsImporter.getPathRelativeToCaseFolder.errMsg1.text={0}\u3092\u76F8\u5BFE\u30D1\u30B9\u306B\u5909\u63DB\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{1}\u306E\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306B\u3042\u308A\u307E\u305B\u3093\u3002 ExternalResultsImporter.getPathRelativeToCaseFolder.errMsg2.text={0}\u306F\u30B1\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{1}\u306E\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u5185\u306E\u30D5\u30A1\u30A4\u30EB\u3078\u306E\u7D76\u5BFE\u30D1\u30B9\u3068\u4E88\u60F3\u3055\u308C\u3066\u3044\u307E\u3059\u3002 -ExternalResultsImporter.importArtifacts.caseErrMsg1.text={3}\u306E{2}\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u3078\u3001{0}\u5C5E\u6027\u3001\u30D0\u30EA\u30E5\u30FC\uFF1D{1}\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u5C5E\u6027\u5024\u578B\uFF1A{4} +ExternalResultsImporter.importArtifacts.caseErrMsg1.text={3}\u306E{2}\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u306E{0}\u5C5E\u6027\u3001\u30D0\u30EA\u30E5\u30FC\uFF1D{1}\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u5C5E\u6027\u5024\u578B\uFF1A{4} ExternalResultsImporter.importDerivedFiles.errMsg1.text={0}\u306B\u6D3E\u751F\u30D5\u30A1\u30A4\u30EB\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30DA\u30A2\u30EC\u30F3\u30C8\u30D5\u30A1\u30A4\u30EB{1}\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 ExternalResultsImporter.importDerivedFiles.errMsg2.text={0}\u306B\u6D3E\u751F\u30D5\u30A1\u30A4\u30EB\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30D5\u30A1\u30A4\u30EB\u304C\u5B58\u5728\u3057\u307E\u305B\u3093\u3002 ExternalResultsImporter.importDerivedFiles.errMsg3.text={0}\u306B\u6D3E\u751F\u30D5\u30A1\u30A4\u30EB\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3067\u306E\u30AF\u30A8\u30EA\u30FC\uFF0F\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306E\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 @@ -17,11 +17,11 @@ ExternalResultsImporter.importReports.errMsg1.text={0}\u306B\u30EC\u30DD\u30FC\u ExternalResultsImporter.importReports.errMsg2.text={0}\u306B\u30EC\u30DD\u30FC\u30C8\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExternalResultsXMLParser.parse.errMsg2.text={0}\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExternalResults.Artifact.addAttribute.exception.msg3.text=\u5024\u578B\u5F15\u6570\u304C\u7A7A\u767D\u3067\u3059\u3002 -ExternalResultsImporter.importArtifacts.errMsg1.text={1}\u304B\u3089{0}\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30BD\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 -ExternalResultsImporter.importArtifacts.errMsg2.text={1}\u304B\u3089{0}\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +ExternalResultsImporter.importArtifacts.errMsg1.text={1}\u306E{0}\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30BD\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +ExternalResultsImporter.importArtifacts.errMsg2.text={1}\u306E{0}\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30B1\u30FC\u30B9\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExternalResultsXMLParser.getChildElement.errMsg1.text={2}\u306B\u3066\u8907\u6570\u306E{1}\u30A8\u30EC\u30E1\u30F3\u30C8\u306E{0}\u30C1\u30E3\u30A4\u30EB\u30C9\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002\u4E00\u756A\u76EE\u4EE5\u5916\u306F\u7121\u8996\u3057\u307E\u3059\u3002 ExternalResultsXMLParser.getChildElementContent.errMsg1.text={2}\u306B\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u306A\u304F\u3001{1}\u30C1\u30E3\u30A4\u30EB\u30C9\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u3042\u308B\u3001{0}\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002 -ExternalResultsXMLParser.getChildElementContent.errMsg2.text={2}\u306B\u3066{1}\u30C1\u30E3\u30A4\u30EB\u30C9\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u6B20\u843D\u3057\u305F{0}\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002 -ExternalResultsXMLParser.parse.errMsg1.text={1}\u306B\u3066{0}\u30EB\u30FC\u30C8\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +ExternalResultsXMLParser.getChildElementContent.errMsg2.text={2}\u306B\u3066{1}\u30C1\u30E3\u30A4\u30EB\u30C9\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u306A\u3044{0}\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002 +ExternalResultsXMLParser.parse.errMsg1.text={1}\u306E{0}\u30EB\u30FC\u30C8\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 ExternalResultsXMLParser.parseArtifactAttributes.errMsg1.text={1}\u306B\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u306A\u3044{0}\u30A8\u30EC\u30E1\u30F3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002 ExternalResultsXMLParser.parseAttributeValueType.errMsg1.text={2}\u30A8\u30EC\u30E1\u30F3\u30C8\u306E{1}\u5C5E\u6027\u306B\u5BFE\u3057\u3066\u3001\u8A8D\u8B58\u3055\u308C\u306A\u3044\u30D0\u30EA\u30E5\u30FC{0}\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002 \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/modules/vmextractor/VMExtractorIngestModule.java b/Core/src/org/sleuthkit/autopsy/modules/vmextractor/VMExtractorIngestModule.java index c94dc2e2a8..7e46777f8e 100644 --- a/Core/src/org/sleuthkit/autopsy/modules/vmextractor/VMExtractorIngestModule.java +++ b/Core/src/org/sleuthkit/autopsy/modules/vmextractor/VMExtractorIngestModule.java @@ -171,8 +171,6 @@ final class VMExtractorIngestModule extends DataSourceIngestModuleAdapter { progressBar.progress(NbBundle.getMessage(this.getClass(), "VMExtractorIngestModule.queuingIngestJobs.message")); // this is for progress bar purposes because at this point we only know in advance how many job folders to ingest, not how many data sources. int numJobsQueued = 0; - // keeps track of number of VMs ingested. A job folder may contain multiple VMs. - int numDataSourcesQueued = 0; // start processing output folders after we are done writing out all vm files for (String folder : imageFolderToOutputFolder.values()) { if (context.dataSourceIngestIsCancelled()) { @@ -183,11 +181,9 @@ final class VMExtractorIngestModule extends DataSourceIngestModuleAdapter { try { logger.log(Level.INFO, "Ingesting virtual machine file {0} in folder {1}", new Object[]{file, folder}); //NON-NLS - // for extracted virtual machines there is no manifest XML file to read data source ID from so we need to create one - numDataSourcesQueued++; - String dataSourceID = parentDataSourceId + "-VM" + numDataSourcesQueued; //NON-NLS + // for extracted virtual machines there is no manifest XML file to read data source ID from so use parent data source ID. // ingest the data sources - ingestVirtualMachineImage(Paths.get(folder, file), dataSourceID); + ingestVirtualMachineImage(Paths.get(folder, file), parentDataSourceId); logger.log(Level.INFO, "Ingest complete for virtual machine file {0} in folder {1}", new Object[]{file, folder}); //NON-NLS } catch (InterruptedException ex) { logger.log(Level.INFO, "Interrupted while ingesting virtual machine file "+file+" in folder "+folder, ex); //NON-NLS diff --git a/Core/src/org/sleuthkit/autopsy/timeline/FXMLConstructor.java b/Core/src/org/sleuthkit/autopsy/timeline/FXMLConstructor.java index c0c00be083..8d88a70630 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/FXMLConstructor.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/FXMLConstructor.java @@ -85,16 +85,16 @@ public class FXMLConstructor { try { fxmlLoader.load(); } catch (IOException exception) { - LOGGER.log(Level.SEVERE, "FXMLConstructor was unable to load FXML, falling back on default Class Loader, and trying again.", exception); + LOGGER.log(Level.SEVERE, "FXMLConstructor was unable to load FXML, falling back on default Class Loader, and trying again.", exception); //NON-NLS try { fxmlLoader.setClassLoader(FXMLLoader.getDefaultClassLoader()); fxmlLoader.load(); } catch (IOException ex) { - LOGGER.log(Level.SEVERE, "FXMLConstructor was unable to load FXML, node initialization may not be complete.", ex); + LOGGER.log(Level.SEVERE, "FXMLConstructor was unable to load FXML, node initialization may not be complete.", ex); //NON-NLS } } } catch (MalformedURLException ex) { - LOGGER.log(Level.SEVERE, "FXMLConstructor was unable to load FXML, node initialization may not be complete.", ex); + LOGGER.log(Level.SEVERE, "FXMLConstructor was unable to load FXML, node initialization may not be complete.", ex); //NON-NLS } } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/PromptDialogManager.java b/Core/src/org/sleuthkit/autopsy/timeline/PromptDialogManager.java index ef249ff1e8..131b8db003 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/PromptDialogManager.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/PromptDialogManager.java @@ -63,7 +63,7 @@ public class PromptDialogManager { try { x = new Image(new URL("nbresloc:/org/netbeans/core/startup/frame.gif").openStream()); //NOI18N } catch (IOException ex) { - LOGGER.log(Level.WARNING, "Failed to load branded icon for progress dialog.", ex); //NOI18N + LOGGER.log(Level.WARNING, "Failed to load branded icon for progress dialog.", ex); //NOI18N NON-NLS } LOGO = x; } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomIn.java b/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomIn.java index bd58c3ccb7..fec431efe3 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomIn.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomIn.java @@ -29,7 +29,7 @@ import org.sleuthkit.autopsy.timeline.TimeLineController; */ public class ZoomIn extends Action { - private static final Image MAGNIFIER_IN = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-in-green.png"); //NOI18N + private static final Image MAGNIFIER_IN = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-in-green.png"); //NOI18N NON-NLS @NbBundle.Messages({"ZoomIn.longText=Zoom in to view about half as much time.", "ZoomIn.action.text=Zoom in"}) diff --git a/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomOut.java b/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomOut.java index 19a6630c33..214c61441c 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomOut.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomOut.java @@ -31,7 +31,7 @@ import org.sleuthkit.autopsy.timeline.datamodel.FilteredEventsModel; */ public class ZoomOut extends Action { - private static final Image MAGNIFIER_OUT = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-out-red.png"); //NOI18N + private static final Image MAGNIFIER_OUT = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-out-red.png"); //NOI18N NON-NLS @NbBundle.Messages({"ZoomOut.longText=Zoom out to view about 50% more time.", "ZoomOut.action.text=Zoom out"}) diff --git a/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomToEvents.java b/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomToEvents.java index 7bcc076936..340d9d8182 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomToEvents.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/actions/ZoomToEvents.java @@ -31,7 +31,7 @@ import org.sleuthkit.autopsy.timeline.datamodel.FilteredEventsModel; */ public class ZoomToEvents extends Action { - private static final Image MAGNIFIER_OUT = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-out-red.png", 16, 16, true, true); //NOI18N + private static final Image MAGNIFIER_OUT = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-out-red.png", 16, 16, true, true); //NOI18N NON-NLS @NbBundle.Messages({"ZoomToEvents.action.text=Zoom to events", "ZoomToEvents.longText=Zoom out to show the nearest events."}) diff --git a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java index 7a6bb4be42..ffd8338cf0 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java @@ -191,6 +191,6 @@ public final class EventStripe implements EventBundle { @Override public String toString() { - return "EventStripe{" + "description=" + description + ", eventIDs=" + eventIDs.size() + '}'; + return "EventStripe{" + "description=" + description + ", eventIDs=" + eventIDs.size() + '}'; //NON-NLS } } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/FilteredEventsModel.java b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/FilteredEventsModel.java index 418e45f2ea..14a0d878f8 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/FilteredEventsModel.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/FilteredEventsModel.java @@ -111,7 +111,7 @@ public final class FilteredEventsModel { @GuardedBy("this") private final ReadOnlyObjectWrapper requestedZoomParamters = new ReadOnlyObjectWrapper<>(); - private final EventBus eventbus = new EventBus("Event_Repository_EventBus"); + private final EventBus eventbus = new EventBus("Event_Repository_EventBus"); //NON-NLS /** * The underlying repo for events. Atomic access to repo is synchronized @@ -374,7 +374,7 @@ public final class FilteredEventsModel { Set updatedEventIDs = repo.deleteTag(content.getId(), null, deletedTagInfo.getTagID(), tagged); return postTagsUpdated(updatedEventIDs); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "unable to determine tagged status of content.", ex); + LOGGER.log(Level.SEVERE, "unable to determine tagged status of content.", ex); //NON-NLS } return false; } @@ -387,7 +387,7 @@ public final class FilteredEventsModel { Set updatedEventIDs = repo.deleteTag(artifact.getObjectID(), artifact.getArtifactID(), deletedTagInfo.getTagID(), tagged); return postTagsUpdated(updatedEventIDs); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "unable to determine tagged status of artifact.", ex); + LOGGER.log(Level.SEVERE, "unable to determine tagged status of artifact.", ex); //NON-NLS } return false; } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/eventtype/MiscTypes.java b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/eventtype/MiscTypes.java index 6f59c8f981..35e49360d3 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/eventtype/MiscTypes.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/eventtype/MiscTypes.java @@ -137,7 +137,7 @@ public enum MiscTypes implements EventType, ArtifactEventType { return file.getName(); } } catch (TskCoreException ex) { - Logger.getLogger(MiscTypes.class.getName()).log(Level.SEVERE, "Exif event type failed to look up backing file name", ex); + Logger.getLogger(MiscTypes.class.getName()).log(Level.SEVERE, "Exif event type failed to look up backing file name", ex); //NON-NLS } return " error loading file name"; // NON-NLS }), diff --git a/Core/src/org/sleuthkit/autopsy/timeline/db/EventDB.java b/Core/src/org/sleuthkit/autopsy/timeline/db/EventDB.java index 42a7063d58..e708fe0b99 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/db/EventDB.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/db/EventDB.java @@ -232,7 +232,7 @@ public class EventDB { return rs.getInt("count"); // NON-NLS } } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error counting all events", ex); + LOGGER.log(Level.SEVERE, "Error counting all events", ex); //NON-NLS } finally { DBLock.unlock(); } @@ -270,15 +270,15 @@ public class EventDB { HashMap counts = new HashMap<>(); DBLock.lock(); try (Statement createStatement = con.createStatement(); - ResultSet rs = createStatement.executeQuery("SELECT tag_name_display_name, COUNT(DISTINCT tag_id) AS count FROM tags" - + " WHERE event_id IN (" + StringUtils.join(eventIDsWithTags, ", ") + ")" - + " GROUP BY tag_name_id" - + " ORDER BY tag_name_display_name");) { + ResultSet rs = createStatement.executeQuery("SELECT tag_name_display_name, COUNT(DISTINCT tag_id) AS count FROM tags" //NON-NLS + + " WHERE event_id IN (" + StringUtils.join(eventIDsWithTags, ", ") + ")" //NON-NLS + + " GROUP BY tag_name_id" //NON-NLS + + " ORDER BY tag_name_display_name");) { //NON-NLS while (rs.next()) { - counts.put(rs.getString("tag_name_display_name"), rs.getLong("count")); + counts.put(rs.getString("tag_name_display_name"), rs.getLong("count")); //NON-NLS } } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Failed to get tag counts by tag name.", ex); + LOGGER.log(Level.SEVERE, "Failed to get tag counts by tag name.", ex); //NON-NLS } finally { DBLock.unlock(); } @@ -327,7 +327,7 @@ public class EventDB { final String sqlWhere = SQLHelper.getSQLWhere(filter); DBLock.lock(); try (Statement stmt = con.createStatement(); //can't use prepared statement because of complex where clause - ResultSet rs = stmt.executeQuery(" SELECT (SELECT Max(time) FROM events " + useHashHitTablesHelper(filter) + useTagTablesHelper(filter) + " WHERE time <=" + start + " AND " + sqlWhere + ") AS start," + ResultSet rs = stmt.executeQuery(" SELECT (SELECT Max(time) FROM events " + useHashHitTablesHelper(filter) + useTagTablesHelper(filter) + " WHERE time <=" + start + " AND " + sqlWhere + ") AS start," //NON-NLS + "(SELECT Min(time) FROM events" + useHashHitTablesHelper(filter) + useTagTablesHelper(filter) + " WHERE time >= " + end + " AND " + sqlWhere + ") AS end")) { // NON-NLS while (rs.next()) { @@ -382,7 +382,7 @@ public class EventDB { try (Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(query)) { while (rs.next()) { - resultIDs.add(rs.getLong("event_id")); + resultIDs.add(rs.getLong("event_id")); //NON-NLS } } catch (SQLException sqlEx) { @@ -416,7 +416,7 @@ public class EventDB { DBLock.lock(); try (ResultSet rs = getDataSourceIDsStmt.executeQuery()) { while (rs.next()) { - long datasourceID = rs.getLong("datasource_id"); + long datasourceID = rs.getLong("datasource_id"); //NON-NLS hashSet.add(datasourceID); } } catch (SQLException ex) { @@ -432,8 +432,8 @@ public class EventDB { DBLock.lock(); try (ResultSet rs = getHashSetNamesStmt.executeQuery();) { while (rs.next()) { - long hashSetID = rs.getLong("hash_set_id"); - String hashSetName = rs.getString("hash_set_name"); + long hashSetID = rs.getLong("hash_set_id"); //NON-NLS + String hashSetName = rs.getString("hash_set_name"); //NON-NLS hashSets.put(hashSetID, hashSetName); } } catch (SQLException ex) { @@ -447,7 +447,7 @@ public class EventDB { void analyze() { DBLock.lock(); try (Statement createStatement = con.createStatement()) { - boolean b = createStatement.execute("analyze; analyze sqlite_master;"); + boolean b = createStatement.execute("analyze; analyze sqlite_master;"); //NON-NLS } catch (SQLException ex) { LOGGER.log(Level.SEVERE, "Failed to analyze events db.", ex); // NON-NLS } finally { @@ -575,35 +575,35 @@ public class EventDB { } try (Statement stmt = con.createStatement()) { - String sql = "CREATE TABLE if not exists hash_sets " - + "( hash_set_id INTEGER primary key," - + " hash_set_name VARCHAR(255) UNIQUE NOT NULL)"; + String sql = "CREATE TABLE if not exists hash_sets " //NON-NLS + + "( hash_set_id INTEGER primary key," //NON-NLS + + " hash_set_name VARCHAR(255) UNIQUE NOT NULL)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem creating hash_sets table", ex); + LOGGER.log(Level.SEVERE, "problem creating hash_sets table", ex); //NON-NLS } try (Statement stmt = con.createStatement()) { - String sql = "CREATE TABLE if not exists hash_set_hits " - + "(hash_set_id INTEGER REFERENCES hash_sets(hash_set_id) not null, " - + " event_id INTEGER REFERENCES events(event_id) not null, " - + " PRIMARY KEY (hash_set_id, event_id))"; + String sql = "CREATE TABLE if not exists hash_set_hits " //NON-NLS + + "(hash_set_id INTEGER REFERENCES hash_sets(hash_set_id) not null, " //NON-NLS + + " event_id INTEGER REFERENCES events(event_id) not null, " //NON-NLS + + " PRIMARY KEY (hash_set_id, event_id))"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem creating hash_set_hits table", ex); + LOGGER.log(Level.SEVERE, "problem creating hash_set_hits table", ex); //NON-NLS } initializeTagsTable(); - createIndex("events", Arrays.asList("datasource_id")); - createIndex("events", Arrays.asList("event_id", "hash_hit")); - createIndex("events", Arrays.asList("event_id", "tagged")); - createIndex("events", Arrays.asList("file_id")); - createIndex("events", Arrays.asList("artifact_id")); - createIndex("events", Arrays.asList("sub_type", "short_description", "time")); - createIndex("events", Arrays.asList("base_type", "short_description", "time")); - createIndex("events", Arrays.asList("time")); - createIndex("events", Arrays.asList("known_state")); + createIndex("events", Arrays.asList("datasource_id")); //NON-NLS + createIndex("events", Arrays.asList("event_id", "hash_hit")); //NON-NLS + createIndex("events", Arrays.asList("event_id", "tagged")); //NON-NLS + createIndex("events", Arrays.asList("file_id")); //NON-NLS + createIndex("events", Arrays.asList("artifact_id")); //NON-NLS + createIndex("events", Arrays.asList("sub_type", "short_description", "time")); //NON-NLS + createIndex("events", Arrays.asList("base_type", "short_description", "time")); //NON-NLS + createIndex("events", Arrays.asList("time")); //NON-NLS + createIndex("events", Arrays.asList("known_state")); //NON-NLS try { insertRowStmt = prepareStatement( @@ -616,19 +616,19 @@ public class EventDB { getEventByIDStmt = prepareStatement("SELECT * FROM events WHERE event_id = ?"); // NON-NLS recordDBInfoStmt = prepareStatement("INSERT OR REPLACE INTO db_info (key, value) values (?, ?)"); // NON-NLS getDBInfoStmt = prepareStatement("SELECT value FROM db_info WHERE key = ?"); // NON-NLS - insertHashSetStmt = prepareStatement("INSERT OR IGNORE INTO hash_sets (hash_set_name) values (?)"); - selectHashSetStmt = prepareStatement("SELECT hash_set_id FROM hash_sets WHERE hash_set_name = ?"); - insertHashHitStmt = prepareStatement("INSERT OR IGNORE INTO hash_set_hits (hash_set_id, event_id) values (?,?)"); - insertTagStmt = prepareStatement("INSERT OR IGNORE INTO tags (tag_id, tag_name_id,tag_name_display_name, event_id) values (?,?,?,?)"); - deleteTagStmt = prepareStatement("DELETE FROM tags WHERE tag_id = ?"); - countAllEventsStmt = prepareStatement("SELECT count(*) AS count FROM events"); - dropEventsTableStmt = prepareStatement("DROP TABLE IF EXISTS events"); - dropHashSetHitsTableStmt = prepareStatement("DROP TABLE IF EXISTS hash_set_hits"); - dropHashSetsTableStmt = prepareStatement("DROP TABLE IF EXISTS hash_sets"); - dropTagsTableStmt = prepareStatement("DROP TABLE IF EXISTS tags"); - dropDBInfoTableStmt = prepareStatement("DROP TABLE IF EXISTS db_ino"); - selectNonArtifactEventIDsByObjectIDStmt = prepareStatement("SELECT event_id FROM events WHERE file_id == ? AND artifact_id IS NULL"); - selectEventIDsBYObjectAndArtifactIDStmt = prepareStatement("SELECT event_id FROM events WHERE file_id == ? AND artifact_id = ?"); + insertHashSetStmt = prepareStatement("INSERT OR IGNORE INTO hash_sets (hash_set_name) values (?)"); //NON-NLS + selectHashSetStmt = prepareStatement("SELECT hash_set_id FROM hash_sets WHERE hash_set_name = ?"); //NON-NLS + insertHashHitStmt = prepareStatement("INSERT OR IGNORE INTO hash_set_hits (hash_set_id, event_id) values (?,?)"); //NON-NLS + insertTagStmt = prepareStatement("INSERT OR IGNORE INTO tags (tag_id, tag_name_id,tag_name_display_name, event_id) values (?,?,?,?)"); //NON-NLS + deleteTagStmt = prepareStatement("DELETE FROM tags WHERE tag_id = ?"); //NON-NLS + countAllEventsStmt = prepareStatement("SELECT count(*) AS count FROM events"); //NON-NLS + dropEventsTableStmt = prepareStatement("DROP TABLE IF EXISTS events"); //NON-NLS + dropHashSetHitsTableStmt = prepareStatement("DROP TABLE IF EXISTS hash_set_hits"); //NON-NLS + dropHashSetsTableStmt = prepareStatement("DROP TABLE IF EXISTS hash_sets"); //NON-NLS + dropTagsTableStmt = prepareStatement("DROP TABLE IF EXISTS tags"); //NON-NLS + dropDBInfoTableStmt = prepareStatement("DROP TABLE IF EXISTS db_ino"); //NON-NLS + selectNonArtifactEventIDsByObjectIDStmt = prepareStatement("SELECT event_id FROM events WHERE file_id == ? AND artifact_id IS NULL"); //NON-NLS + selectEventIDsBYObjectAndArtifactIDStmt = prepareStatement("SELECT event_id FROM events WHERE file_id == ? AND artifact_id = ?"); //NON-NLS } catch (SQLException sQLException) { LOGGER.log(Level.SEVERE, "failed to prepareStatment", sQLException); // NON-NLS } @@ -643,15 +643,15 @@ public class EventDB { */ private void initializeTagsTable() { try (Statement stmt = con.createStatement()) { - String sql = "CREATE TABLE IF NOT EXISTS tags " - + "(tag_id INTEGER NOT NULL," - + " tag_name_id INTEGER NOT NULL, " - + " tag_name_display_name TEXT NOT NULL, " - + " event_id INTEGER REFERENCES events(event_id) NOT NULL, " - + " PRIMARY KEY (event_id, tag_name_id))"; + String sql = "CREATE TABLE IF NOT EXISTS tags " //NON-NLS + + "(tag_id INTEGER NOT NULL," //NON-NLS + + " tag_name_id INTEGER NOT NULL, " //NON-NLS + + " tag_name_display_name TEXT NOT NULL, " //NON-NLS + + " event_id INTEGER REFERENCES events(event_id) NOT NULL, " //NON-NLS + + " PRIMARY KEY (event_id, tag_name_id))"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem creating tags table", ex); + LOGGER.log(Level.SEVERE, "problem creating tags table", ex); //NON-NLS } } @@ -662,7 +662,7 @@ public class EventDB { */ private void createIndex(final String tableName, final List columnList) { String indexColumns = columnList.stream().collect(Collectors.joining(",", "(", ")")); - String indexName = tableName + "_" + StringUtils.join(columnList, "_") + "_idx"; + String indexName = tableName + "_" + StringUtils.join(columnList, "_") + "_idx"; //NON-NLS try (Statement stmt = con.createStatement()) { String sql = "CREATE INDEX IF NOT EXISTS " + indexName + " ON " + tableName + indexColumns; // NON-NLS @@ -680,7 +680,7 @@ public class EventDB { private boolean hasDBColumn(@Nonnull final String dbColumn) { try (Statement stmt = con.createStatement()) { - ResultSet executeQuery = stmt.executeQuery("PRAGMA table_info(events)"); + ResultSet executeQuery = stmt.executeQuery("PRAGMA table_info(events)"); //NON-NLS while (executeQuery.next()) { if (dbColumn.equals(executeQuery.getString("name"))) { return true; @@ -693,15 +693,15 @@ public class EventDB { } private boolean hasDataSourceIDColumn() { - return hasDBColumn("datasource_id"); + return hasDBColumn("datasource_id"); //NON-NLS } private boolean hasTaggedColumn() { - return hasDBColumn("tagged"); + return hasDBColumn("tagged"); //NON-NLS } private boolean hasHashHitColumn() { - return hasDBColumn("hash_hit"); + return hasDBColumn("hash_hit"); //NON-NLS } void insertEvent(long time, EventType type, long datasourceID, long objID, @@ -764,7 +764,7 @@ public class EventDB { try (ResultSet generatedKeys = insertRowStmt.getGeneratedKeys()) { while (generatedKeys.next()) { - long eventID = generatedKeys.getLong("last_insert_rowid()"); + long eventID = generatedKeys.getLong("last_insert_rowid()"); //NON-NLS for (String name : hashSetNames) { // "insert or ignore into hash_sets (hash_set_name) values (?)" @@ -776,7 +776,7 @@ public class EventDB { selectHashSetStmt.setString(1, name); try (ResultSet rs = selectHashSetStmt.executeQuery()) { while (rs.next()) { - int hashsetID = rs.getInt("hash_set_id"); + int hashsetID = rs.getInt("hash_set_id"); //NON-NLS //"insert or ignore into hash_set_hits (hash_set_id, obj_id) values (?,?)"; insertHashHitStmt.setInt(1, hashsetID); insertHashHitStmt.setLong(2, eventID); @@ -925,14 +925,14 @@ public class EventDB { HashSet eventIDs = new HashSet<>(); try (ResultSet executeQuery = selectStmt.executeQuery();) { while (executeQuery.next()) { - eventIDs.add(executeQuery.getLong("event_id")); + eventIDs.add(executeQuery.getLong("event_id")); //NON-NLS } } //update tagged state for all event with selected ids try (Statement updateStatement = con.createStatement();) { - updateStatement.executeUpdate("UPDATE events SET tagged = " + (tagged ? 1 : 0) - + " WHERE event_id IN (" + StringUtils.join(eventIDs, ",") + ")"); + updateStatement.executeUpdate("UPDATE events SET tagged = " + (tagged ? 1 : 0) //NON-NLS + + " WHERE event_id IN (" + StringUtils.join(eventIDs, ",") + ")"); //NON-NLS } return eventIDs; @@ -986,22 +986,22 @@ public class EventDB { SQLiteJDBCLoader.getVersion(), SQLiteJDBCLoader.isNativeMode() ? "native" : "pure-java")); // NON-NLS } catch (Exception exception) { - LOGGER.log(Level.SEVERE, "Failed to determine if sqlite-jdbc is loaded in native or pure-java mode.", exception); + LOGGER.log(Level.SEVERE, "Failed to determine if sqlite-jdbc is loaded in native or pure-java mode.", exception); //NON-NLS } } private TimeLineEvent constructTimeLineEvent(ResultSet rs) throws SQLException { - return new TimeLineEvent(rs.getLong("event_id"), - rs.getLong("datasource_id"), - rs.getLong("file_id"), - rs.getLong("artifact_id"), - rs.getLong("time"), RootEventType.allTypes.get(rs.getInt("sub_type")), - rs.getString("full_description"), - rs.getString("med_description"), - rs.getString("short_description"), - TskData.FileKnown.valueOf(rs.getByte("known_state")), - rs.getInt("hash_hit") != 0, - rs.getInt("tagged") != 0); + return new TimeLineEvent(rs.getLong("event_id"), //NON-NLS + rs.getLong("datasource_id"), //NON-NLS + rs.getLong("file_id"), //NON-NLS + rs.getLong("artifact_id"), //NON-NLS + rs.getLong("time"), RootEventType.allTypes.get(rs.getInt("sub_type")), //NON-NLS + rs.getString("full_description"), //NON-NLS + rs.getString("med_description"), //NON-NLS + rs.getString("short_description"), //NON-NLS + TskData.FileKnown.valueOf(rs.getByte("known_state")), //NON-NLS + rs.getInt("hash_hit") != 0, //NON-NLS + rs.getInt("tagged") != 0); //NON-NLS } /** @@ -1031,7 +1031,7 @@ public class EventDB { final boolean useSubTypes = (zoomLevel == EventTypeZoomLevel.SUB_TYPE); //get some info about the range of dates requested - final String queryString = "SELECT count(DISTINCT events.event_id) AS count, " + typeColumnHelper(useSubTypes) + final String queryString = "SELECT count(DISTINCT events.event_id) AS count, " + typeColumnHelper(useSubTypes) //NON-NLS + " FROM events" + useHashHitTablesHelper(filter) + useTagTablesHelper(filter) + " WHERE time >= " + startTime + " AND time < " + endTime + " AND " + SQLHelper.getSQLWhere(filter) // NON-NLS + " GROUP BY " + typeColumnHelper(useSubTypes); // NON-NLS @@ -1040,8 +1040,8 @@ public class EventDB { ResultSet rs = stmt.executeQuery(queryString);) { while (rs.next()) { EventType type = useSubTypes - ? RootEventType.allTypes.get(rs.getInt("sub_type")) - : BaseTypes.values()[rs.getInt("base_type")]; + ? RootEventType.allTypes.get(rs.getInt("sub_type")) //NON-NLS + : BaseTypes.values()[rs.getInt("base_type")]; //NON-NLS typeMap.put(type, rs.getLong("count")); // NON-NLS } @@ -1090,9 +1090,9 @@ public class EventDB { //compose query string, the new-lines are only for nicer formatting if printing the entire query String query = "SELECT strftime('" + strfTimeFormat + "',time , 'unixepoch'" + timeZone + ") AS interval," // NON-NLS - + "\n group_concat(events.event_id) as event_ids," - + "\n group_concat(CASE WHEN hash_hit = 1 THEN events.event_id ELSE NULL END) as hash_hits," - + "\n group_concat(CASE WHEN tagged = 1 THEN events.event_id ELSE NULL END) as taggeds," + + "\n group_concat(events.event_id) as event_ids," //NON-NLS + + "\n group_concat(CASE WHEN hash_hit = 1 THEN events.event_id ELSE NULL END) as hash_hits," //NON-NLS + + "\n group_concat(CASE WHEN tagged = 1 THEN events.event_id ELSE NULL END) as taggeds," //NON-NLS + "\n min(time), max(time), " + typeColumn + ", " + descriptionColumn // NON-NLS + "\n FROM events" + useHashHitTablesHelper(filter) + useTagTablesHelper(filter) // NON-NLS + "\n WHERE time >= " + start + " AND time < " + end + " AND " + SQLHelper.getSQLWhere(filter) // NON-NLS @@ -1101,7 +1101,7 @@ public class EventDB { switch (Version.getBuildType()) { case DEVELOPMENT: - LOGGER.log(Level.INFO, "executing timeline query: {0}", query); + LOGGER.log(Level.INFO, "executing timeline query: {0}", query); //NON-NLS break; case RELEASE: default: @@ -1145,8 +1145,8 @@ public class EventDB { String description = rs.getString(SQLHelper.getDescriptionColumn(descriptionLOD)); EventType type = useSubTypes ? RootEventType.allTypes.get(rs.getInt("sub_type")) : BaseTypes.values()[rs.getInt("base_type")];// NON-NLS - Set hashHits = SQLHelper.unGroupConcat(rs.getString("hash_hits"), Long::valueOf); - Set tagged = SQLHelper.unGroupConcat(rs.getString("taggeds"), Long::valueOf); + Set hashHits = SQLHelper.unGroupConcat(rs.getString("hash_hits"), Long::valueOf); //NON-NLS + Set tagged = SQLHelper.unGroupConcat(rs.getString("taggeds"), Long::valueOf); //NON-NLS return new EventCluster(interval, type, eventIDs, hashHits, tagged, description, descriptionLOD); @@ -1217,7 +1217,7 @@ public class EventDB { } private static String typeColumnHelper(final boolean useSubTypes) { - return useSubTypes ? "sub_type" : "base_type"; + return useSubTypes ? "sub_type" : "base_type"; //NON-NLS } private long getDBInfo(DBInfoKey key, long defaultValue) { diff --git a/Core/src/org/sleuthkit/autopsy/timeline/db/EventsRepository.java b/Core/src/org/sleuthkit/autopsy/timeline/db/EventsRepository.java index ff9f46a075..638136882b 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/db/EventsRepository.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/db/EventsRepository.java @@ -97,7 +97,7 @@ public class EventsRepository { private final static Logger LOGGER = Logger.getLogger(EventsRepository.class.getName()); - private final Executor workerExecutor = Executors.newSingleThreadExecutor(new ThreadFactoryBuilder().setNameFormat("eventrepository-worker-%d").build()); + private final Executor workerExecutor = Executors.newSingleThreadExecutor(new ThreadFactoryBuilder().setNameFormat("eventrepository-worker-%d").build()); //NON-NLS private DBPopulationWorker dbWorker; private final EventDB eventDB; private final Case autoCase; @@ -218,7 +218,7 @@ public class EventsRepository { try { return eventStripeCache.get(params); } catch (ExecutionException ex) { - LOGGER.log(Level.SEVERE, "Failed to load Event Stripes from cache for " + params.toString(), ex); + LOGGER.log(Level.SEVERE, "Failed to load Event Stripes from cache for " + params.toString(), ex); //NON-NLS return Collections.emptyList(); } } @@ -275,7 +275,7 @@ public class EventsRepository { try { datasourcesMap.putIfAbsent(id, skCase.getContentById(id).getDataSource().getName()); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to get datasource by ID.", ex); + LOGGER.log(Level.SEVERE, "Failed to get datasource by ID.", ex); //NON-NLS } } @@ -283,7 +283,7 @@ public class EventsRepository { //should this only be tags applied to files or event bearing artifacts? tagNames.setAll(skCase.getTagNamesInUse()); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to get tag names in use.", ex); + LOGGER.log(Level.SEVERE, "Failed to get tag names in use.", ex); //NON-NLS } } @@ -310,7 +310,7 @@ public class EventsRepository { try { tagNames.setAll(autoCase.getSleuthkitCase().getTagNamesInUse()); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to get tag names in use.", ex); + LOGGER.log(Level.SEVERE, "Failed to get tag names in use.", ex); //NON-NLS } } @@ -368,7 +368,7 @@ public class EventsRepository { */ @ThreadConfined(type = ThreadConfined.ThreadType.JFX) private CancellationProgressTask rebuildRepository(final DBPopulationMode mode) { - LOGGER.log(Level.INFO, "(re)starting {0} db population task", mode); + LOGGER.log(Level.INFO, "(re)starting {0} db population task", mode); //NON-NLS if (dbWorker != null) { dbWorker.cancel(); } @@ -481,7 +481,7 @@ public class EventsRepository { //reset database //TODO: can we do more incremental updates? -jm eventDB.reInitializeDB(); //grab ids of all files - List fileIDs = skCase.findAllFileIdsWhere("name != '.' AND name != '..'"); + List fileIDs = skCase.findAllFileIdsWhere("name != '.' AND name != '..'"); //NON-NLS final int numFiles = fileIDs.size(); trans = eventDB.beginTransaction(); @@ -635,7 +635,7 @@ public class EventsRepository { try { get(); } catch (CancellationException ex) { - LOGGER.log(Level.WARNING, "Timeline database population was cancelled by the user. " + LOGGER.log(Level.WARNING, "Timeline database population was cancelled by the user. " //NON-NLS + " Not all events may be present or accurate."); // NON-NLS } catch (Exception ex) { LOGGER.log(Level.WARNING, "Unexpected exception while populating database.", ex); // NON-NLS diff --git a/Core/src/org/sleuthkit/autopsy/timeline/db/SQLHelper.java b/Core/src/org/sleuthkit/autopsy/timeline/db/SQLHelper.java index e605fb18df..04eb7c970b 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/db/SQLHelper.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/db/SQLHelper.java @@ -62,12 +62,12 @@ class SQLHelper { static String useHashHitTablesHelper(RootFilter filter) { HashHitsFilter hashHitFilter = filter.getHashHitsFilter(); - return hashHitFilter.isActive() ? " LEFT JOIN hash_set_hits " : " "; + return hashHitFilter.isActive() ? " LEFT JOIN hash_set_hits " : " "; //NON-NLS } static String useTagTablesHelper(RootFilter filter) { TagsFilter tagsFilter = filter.getTagsFilter(); - return tagsFilter.isActive() ? " LEFT JOIN tags " : " "; + return tagsFilter.isActive() ? " LEFT JOIN tags " : " "; //NON-NLS } /** @@ -93,13 +93,13 @@ class SQLHelper { return filter.getSubFilters().stream() .filter(Filter::isSelected) .map(SQLHelper::getSQLWhere) - .collect(Collectors.joining(" and ", "( ", ")")); + .collect(Collectors.joining(" and ", "( ", ")")); //NON-NLS } private static String getSQLWhere(UnionFilter filter) { return filter.getSubFilters().stream() .filter(Filter::isSelected).map(SQLHelper::getSQLWhere) - .collect(Collectors.joining(" or ", "( ", ")")); + .collect(Collectors.joining(" or ", "( ", ")")); //NON-NLS } static String getSQLWhere(RootFilter filter) { @@ -143,7 +143,7 @@ class SQLHelper { } else { throw new IllegalArgumentException("getSQLWhere not defined for " + filter.getClass().getCanonicalName()); } - result = StringUtils.deleteWhitespace(result).equals("(1and1and1)") ? "1" : result; + result = StringUtils.deleteWhitespace(result).equals("(1and1and1)") ? "1" : result; //NON-NLS result = StringUtils.deleteWhitespace(result).equals("()") ? "1" : result; return result; } @@ -158,7 +158,7 @@ class SQLHelper { private static String getSQLWhere(DescriptionFilter filter) { if (filter.isActive()) { - String likeOrNotLike = (filter.getFilterMode() == DescriptionFilter.FilterMode.INCLUDE ? "" : " NOT") + " LIKE '"; + String likeOrNotLike = (filter.getFilterMode() == DescriptionFilter.FilterMode.INCLUDE ? "" : " NOT") + " LIKE '"; //NON-NLS return "(" + getDescriptionColumn(filter.getDescriptionLoD()) + likeOrNotLike + filter.getDescription() + "' )"; // NON-NLS } else { return "1"; @@ -172,8 +172,8 @@ class SQLHelper { .filter((TagNameFilter t) -> t.isSelected() && !t.isDisabled()) .map((TagNameFilter t) -> String.valueOf(t.getTagName().getId())) .collect(Collectors.joining(", ", "(", ")")); - return "(events.event_id == tags.event_id AND " - + "tags.tag_name_id IN " + tagNameIDs + ") "; + return "(events.event_id == tags.event_id AND " //NON-NLS + + "tags.tag_name_id IN " + tagNameIDs + ") "; //NON-NLS } else { return "1"; } @@ -187,7 +187,7 @@ class SQLHelper { .filter((HashSetFilter t) -> t.isSelected() && !t.isDisabled()) .map((HashSetFilter t) -> String.valueOf(t.getHashSetID())) .collect(Collectors.joining(", ", "(", ")")); - return "(hash_set_hits.hash_set_id IN " + hashSetIDs + " AND hash_set_hits.event_id == events.event_id)"; + return "(hash_set_hits.hash_set_id IN " + hashSetIDs + " AND hash_set_hits.event_id == events.event_id)"; //NON-NLS } else { return "1"; } @@ -195,14 +195,14 @@ class SQLHelper { private static String getSQLWhere(DataSourceFilter filter) { if (filter.isActive()) { - return "(datasource_id = '" + filter.getDataSourceID() + "')"; + return "(datasource_id = '" + filter.getDataSourceID() + "')"; //NON-NLS } else { return "1"; } } private static String getSQLWhere(DataSourcesFilter filter) { - return (filter.isActive()) ? "(datasource_id in (" + return (filter.isActive()) ? "(datasource_id in (" //NON-NLS + filter.getSubFilters().stream() .filter(AbstractFilter::isActive) .map((dataSourceFilter) -> String.valueOf(dataSourceFilter.getDataSourceID())) @@ -215,9 +215,9 @@ class SQLHelper { return "1"; } String strippedFilterText = StringUtils.strip(filter.getText()); - return "((med_description like '%" + strippedFilterText + "%')" - + " or (full_description like '%" + strippedFilterText + "%')" - + " or (short_description like '%" + strippedFilterText + "%'))"; + return "((med_description like '%" + strippedFilterText + "%')" //NON-NLS + + " or (full_description like '%" + strippedFilterText + "%')" //NON-NLS + + " or (short_description like '%" + strippedFilterText + "%'))"; //NON-NLS } else { return "1"; } @@ -240,7 +240,7 @@ class SQLHelper { return "1"; //then collapse clause to true } } - return "(sub_type IN (" + StringUtils.join(getActiveSubTypes(typeFilter), ",") + "))"; + return "(sub_type IN (" + StringUtils.join(getActiveSubTypes(typeFilter), ",") + "))"; //NON-NLS } private static List getActiveSubTypes(TypeFilter filter) { @@ -288,12 +288,12 @@ class SQLHelper { static String getDescriptionColumn(DescriptionLoD lod) { switch (lod) { case FULL: - return "full_description"; + return "full_description"; //NON-NLS case MEDIUM: - return "med_description"; + return "med_description"; //NON-NLS case SHORT: default: - return "short_description"; + return "short_description"; //NON-NLS } } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/explorernodes/EventNode.java b/Core/src/org/sleuthkit/autopsy/timeline/explorernodes/EventNode.java index bd801bef17..04b0370b42 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/explorernodes/EventNode.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/explorernodes/EventNode.java @@ -78,7 +78,7 @@ class EventNode extends DisplayableItemNode { try { timePropery.setValue(getDateTimeString()); } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException ex) { - LOGGER.log(Level.SEVERE, "unexpected error setting date/time property on EventNode explorer node", ex); + LOGGER.log(Level.SEVERE, "unexpected error setting date/time property on EventNode explorer node", ex); //NON-NLS } }); diff --git a/Core/src/org/sleuthkit/autopsy/timeline/filters/DescriptionFilter.java b/Core/src/org/sleuthkit/autopsy/timeline/filters/DescriptionFilter.java index 5ac569c6f9..c31049e21d 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/filters/DescriptionFilter.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/filters/DescriptionFilter.java @@ -19,6 +19,8 @@ package org.sleuthkit.autopsy.timeline.filters; import java.util.Objects; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.timeline.zooming.DescriptionLoD; public class DescriptionFilter extends AbstractFilter { @@ -69,10 +71,12 @@ public class DescriptionFilter extends AbstractFilter { return description; } + @NbBundle.Messages({"DescriptionFilter.mode.exclude=Exclude", + "DescriptionFilter.mode.include=Include"}) public enum FilterMode { - EXCLUDE("Exclude"), - INCLUDE("Include"); + EXCLUDE(Bundle.DescriptionFilter_mode_exclude()), + INCLUDE(Bundle.DescriptionFilter_mode_include()); private final String displayName; diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/AbstractVisualizationPane.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/AbstractVisualizationPane.java index 59be79531a..eeefc35904 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/AbstractVisualizationPane.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/AbstractVisualizationPane.java @@ -223,7 +223,7 @@ public abstract class AbstractVisualizationPane extends BorderPane { - private static final Image ClEAR_INTERVAL_ICON = new Image("/org/sleuthkit/autopsy/timeline/images/cross-script.png", 16, 16, true, true, true); - private static final Image ZOOM_TO_INTERVAL_ICON = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-fit.png", 16, 16, true, true, true); + private static final Image ClEAR_INTERVAL_ICON = new Image("/org/sleuthkit/autopsy/timeline/images/cross-script.png", 16, 16, true, true, true); //NON-NLS + private static final Image ZOOM_TO_INTERVAL_ICON = new Image("/org/sleuthkit/autopsy/timeline/images/magnifier-zoom-fit.png", 16, 16, true, true, true); //NON-NLS private static final double STROKE_WIDTH = 3; private static final double HALF_STROKE = STROKE_WIDTH / 2; diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/DetailViewPane.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/DetailViewPane.java index f0ab8a9860..1bca199dbb 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/DetailViewPane.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/DetailViewPane.java @@ -391,6 +391,8 @@ public class DetailViewPane extends AbstractVisualizationPane { @@ -415,8 +417,8 @@ public class DetailViewPane extends AbstractVisualizationPane, ParentType extends EventBundle, ParentNodeType extends EventBundleNodeBase> extends StackPane { private static final Logger LOGGER = Logger.getLogger(EventBundleNodeBase.class.getName()); - private static final Image HASH_PIN = new Image("/org/sleuthkit/autopsy/images/hashset_hits.png"); //NOI18N + private static final Image HASH_PIN = new Image("/org/sleuthkit/autopsy/images/hashset_hits.png"); //NOI18N NON-NLS private static final Image TAG = new Image("/org/sleuthkit/autopsy/images/green-tag-icon-16.png"); // NON-NLS //NOI18N static final CornerRadii CORNER_RADII_3 = new CornerRadii(3); @@ -131,7 +132,7 @@ public abstract class EventBundleNodeBase tooltTipTask = new Task() { { - updateTitle("loading tooltip"); + updateTitle(Bundle.EventBundleNodeBase_toolTip_loading2()); } @Override @@ -248,7 +254,7 @@ public abstract class EventBundleNodeBase implements TimeLineChart { - private static final String styleSheet = GuideLine.class.getResource("EventsDetailsChart.css").toExternalForm(); + private static final String styleSheet = GuideLine.class.getResource("EventsDetailsChart.css").toExternalForm(); //NON-NLS private static final Image HIDE = new Image("/org/sleuthkit/autopsy/timeline/images/eye--minus.png"); // NON-NLS private static final Image SHOW = new Image("/org/sleuthkit/autopsy/timeline/images/eye--plus.png"); // NON-NLS - private static final Image MARKER = new Image("/org/sleuthkit/autopsy/timeline/images/marker.png", 16, 16, true, true, true); + private static final Image MARKER = new Image("/org/sleuthkit/autopsy/timeline/images/marker.png", 16, 16, true, true, true); //NON-NLS private static final int PROJECTED_LINE_Y_OFFSET = 5; private static final int PROJECTED_LINE_STROKE_WIDTH = 5; private static final int MINIMUM_EVENT_NODE_GAP = 4; @@ -725,11 +725,13 @@ public final class EventDetailsChart extends XYChart impl } } + @NbBundle.Messages({"HideDescriptionAction.displayName=Hide", + "HideDescriptionAction.displayMsg=Hide this group from the details view."}) class HideDescriptionAction extends Action { HideDescriptionAction(String description, DescriptionLoD descriptionLoD) { - super("Hide"); - setLongText("Hide this group from the details view."); + super(Bundle.HideDescriptionAction_displayName()); + setLongText(Bundle.HideDescriptionAction_displayMsg()); setGraphic(new ImageView(HIDE)); setEventHandler((ActionEvent t) -> { final DescriptionFilter testFilter = new DescriptionFilter( @@ -749,10 +751,11 @@ public final class EventDetailsChart extends XYChart impl } } + @NbBundle.Messages({"UnhideDescriptionAction.displayName=Unhide"}) class UnhideDescriptionAction extends Action { UnhideDescriptionAction(String description, DescriptionLoD descriptionLoD) { - super("Unhide"); + super(Bundle.UnhideDescriptionAction_displayName()); setGraphic(new ImageView(SHOW)); setEventHandler((ActionEvent t) -> getController().getQuickHideFilters().stream() diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/GuideLine.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/GuideLine.java index 0c8cbfeffd..a462a92b9e 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/GuideLine.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/GuideLine.java @@ -53,7 +53,7 @@ class GuideLine extends Line { Axis xAxis = chart.getXAxis(); endYProperty().bind(chart.heightProperty().subtract(xAxis.heightProperty().subtract(xAxis.tickLengthProperty()))); - getStyleClass().add("guide-line"); + getStyleClass().add("guide-line"); //NON-NLS Tooltip.install(this, tooltip); tooltip.setOnShowing(showing -> tooltip.setText(Bundle.GuideLine_tooltip_text(getDateTimeAsString()))); diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/filtering/FilterSetPanel.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/filtering/FilterSetPanel.java index d99bf5658f..d5a0ecdad0 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/filtering/FilterSetPanel.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/filtering/FilterSetPanel.java @@ -53,9 +53,6 @@ import org.sleuthkit.autopsy.timeline.filters.DescriptionFilter; import org.sleuthkit.autopsy.timeline.filters.Filter; import org.sleuthkit.autopsy.timeline.filters.RootFilter; import org.sleuthkit.autopsy.timeline.filters.TypeFilter; -import static org.sleuthkit.autopsy.timeline.ui.filtering.Bundle.Timeline_ui_filtering_menuItem_none; -import static org.sleuthkit.autopsy.timeline.ui.filtering.Bundle.Timeline_ui_filtering_menuItem_only; -import static org.sleuthkit.autopsy.timeline.ui.filtering.Bundle.Timeline_ui_filtering_menuItem_select; /** * The FXML controller for the filter ui. @@ -65,7 +62,7 @@ import static org.sleuthkit.autopsy.timeline.ui.filtering.Bundle.Timeline_ui_fil */ final public class FilterSetPanel extends BorderPane { - private static final Image TICK = new Image("org/sleuthkit/autopsy/timeline/images/tick.png"); + private static final Image TICK = new Image("org/sleuthkit/autopsy/timeline/images/tick.png"); //NON-NLS @FXML private Button applyButton; @@ -103,7 +100,9 @@ final public class FilterSetPanel extends BorderPane { "Timeline.ui.filtering.menuItem.none=none", "Timeline.ui.filtering.menuItem.only=only", "Timeline.ui.filtering.menuItem.others=others", - "Timeline.ui.filtering.menuItem.select=select"}) + "Timeline.ui.filtering.menuItem.select=select", + "FilterSetPanel.hiddenDescriptionsListView.unhideAndRm=Unhide and remove from list", + "FilterSetPanel.hiddenDescriptionsListView.remove=Remove from list"}) void initialize() { assert applyButton != null : "fx:id=\"applyButton\" was not injected: check your FXML file 'FilterSetPanel.fxml'."; // NON-NLS @@ -123,14 +122,14 @@ final public class FilterSetPanel extends BorderPane { t.getValue().setSelected(Boolean.TRUE); }); }); - MenuItem none = new MenuItem(Timeline_ui_filtering_menuItem_none()); + MenuItem none = new MenuItem(Bundle.Timeline_ui_filtering_menuItem_none()); none.setOnAction(e -> { row.getTreeItem().getParent().getChildren().forEach((TreeItem t) -> { t.getValue().setSelected(Boolean.FALSE); }); }); - MenuItem only = new MenuItem(Timeline_ui_filtering_menuItem_only()); + MenuItem only = new MenuItem(Bundle.Timeline_ui_filtering_menuItem_only()); only.setOnAction(e -> { row.getTreeItem().getParent().getChildren().forEach((TreeItem t) -> { if (t == row.getTreeItem()) { @@ -151,7 +150,7 @@ final public class FilterSetPanel extends BorderPane { }); }); final ContextMenu rowMenu = new ContextMenu(); - Menu select = new Menu(Timeline_ui_filtering_menuItem_select()); + Menu select = new Menu(Bundle.Timeline_ui_filtering_menuItem_select()); select.setOnAction(e -> { row.getItem().setSelected(!row.getItem().isSelected()); }); @@ -212,9 +211,9 @@ final public class FilterSetPanel extends BorderPane { private void configureText(Boolean newValue) { if (newValue) { - setText("Unhide and remove from list"); + setText(Bundle.FilterSetPanel_hiddenDescriptionsListView_unhideAndRm()); } else { - setText("Remove from list"); + setText(Bundle.FilterSetPanel_hiddenDescriptionsListView_remove()); } } })); @@ -257,12 +256,13 @@ final public class FilterSetPanel extends BorderPane { }); } - @NbBundle.Messages({"FilterSetPanel.applyButton.text=Apply"}) + @NbBundle.Messages({"FilterSetPanel.applyButton.text=Apply", + "FilterSetPanel.applyButton.longText=(Re)Apply filters"}) private class ApplyFiltersAction extends Action { ApplyFiltersAction() { super(Bundle.FilterSetPanel_applyButton_text()); - setLongText("(Re)Apply filters"); + setLongText(Bundle.FilterSetPanel_applyButton_longText()); setGraphic(new ImageView(TICK)); setEventHandler((ActionEvent t) -> { applyFilters(); diff --git a/Core/src/org/sleuthkit/autopsy/timeline/zooming/ZoomParams.java b/Core/src/org/sleuthkit/autopsy/timeline/zooming/ZoomParams.java index 95304d61af..bd24ca9b38 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/zooming/ZoomParams.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/zooming/ZoomParams.java @@ -130,7 +130,7 @@ public class ZoomParams { @Override public String toString() { - return "ZoomParams{" + "timeRange=" + timeRange + ", typeZoomLevel=" + typeZoomLevel + ", filter=" + filter + ", descrLOD=" + descrLOD + '}'; + return "ZoomParams{" + "timeRange=" + timeRange + ", typeZoomLevel=" + typeZoomLevel + ", filter=" + filter + ", descrLOD=" + descrLOD + '}'; //NON-NLS } } diff --git a/CoreLibs/src/org/sleuthkit/autopsy/corelibs/Bundle_ja.properties b/CoreLibs/src/org/sleuthkit/autopsy/corelibs/Bundle_ja.properties index 92a8c0ab97..bbc1bac4b1 100644 --- a/CoreLibs/src/org/sleuthkit/autopsy/corelibs/Bundle_ja.properties +++ b/CoreLibs/src/org/sleuthkit/autopsy/corelibs/Bundle_ja.properties @@ -1,7 +1,7 @@ OpenIDE-Module-Display-Category=\u30E9\u30A4\u30D6\u30E9\u30EA OpenIDE-Module-Name=Autopsy-\u30B3\u30A2\u30E9\u30A4\u30D6\u30E9\u30EA OpenIDE-Module-Long-Description=\ - \u30B3\u30A2\u30E2\u30B8\u30E5\u30FC\u30EB\u7528\u306E\u5916\u90E8\u30E9\u30A4\u30D6\u30E9\u30EA\u30C7\u30A3\u30DA\u30F3\u30C7\u30F3\u30B7\u30FC\u3002\n\ + \u30B3\u30A2\u30E2\u30B8\u30E5\u30FC\u30EB\u7528\u306E\u5916\u90E8\u30E9\u30A4\u30D6\u30E9\u30EA\u3078\u306E\u4F9D\u5B58\u95A2\u4FC2\u3002\n\ \u30E9\u30A4\u30D6\u30E9\u30EA\u306F\u4ED6\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u3089\u3082\u30A4\u30F3\u30DD\u30FC\u30C8\u3067\u304D\u307E\u3059\u3002 OpenIDE-Module-Short-Description=Autopsy\u30B3\u30A2\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u5916\u90E8\u30E9\u30A4\u30D6\u30E9\u30EA SigarLoader.linkErr.msg=Sigar\u30E9\u30A4\u30D6\u30E9\u30EA\u3092\u304A\u4F7F\u3044\u306E\u74B0\u5883\u306B\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3067\u3057\u305F\uFF08\u91CD\u5927\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3001OS\u30EC\u30D9\u30EB\u306E\u30E1\u30C8\u30EA\u30AF\u30B9\u306F\u78BA\u8A8D\u3067\u304D\u307E\u305B\u3093\u3002 \ No newline at end of file diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FXMLConstructor.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FXMLConstructor.java index 55d45ac5f5..ec846c1f36 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FXMLConstructor.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FXMLConstructor.java @@ -39,7 +39,7 @@ public class FXMLConstructor { private static Logger logger = Logger.getLogger(FXMLConstructor.class.getName()); static public void construct(Object n, String fxmlFileName) { - final String name = "nbres:/" + StringUtils.replace(n.getClass().getPackage().getName(), ".", "/") + "/" + fxmlFileName; + final String name = "nbres:/" + StringUtils.replace(n.getClass().getPackage().getName(), ".", "/") + "/" + fxmlFileName; //NON-NLS try { FXMLLoader fxmlLoader = new FXMLLoader(new URL(name)); @@ -53,12 +53,12 @@ public class FXMLConstructor { fxmlLoader.setClassLoader(FXMLLoader.getDefaultClassLoader()); fxmlLoader.load(); } catch (IOException ex) { - String msg = String.format("Failed to load fxml file %s", fxmlFileName); + String msg = String.format("Failed to load fxml file %s", fxmlFileName); //NON-NLS logger.log(Level.SEVERE, msg, ex); } } } catch (MalformedURLException ex) { - String msg = String.format("Malformed URL %s", name); + String msg = String.format("Malformed URL %s", name); //NON-NLS logger.log(Level.SEVERE, msg, ex); } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileIDSelectionModel.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileIDSelectionModel.java index e2109389fd..812ace17e9 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileIDSelectionModel.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileIDSelectionModel.java @@ -72,7 +72,7 @@ public class FileIDSelectionModel { try { fileNodes.add(new FileNode(controller.getSleuthKitCase().getAbstractFileById(id))); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to get abstract file by its ID", ex); + LOGGER.log(Level.SEVERE, "Failed to get abstract file by its ID", ex); //NON-NLS } } FileNode[] fileNodeArray = fileNodes.stream().toArray(FileNode[]::new); @@ -84,7 +84,7 @@ public class FileIDSelectionModel { try { etc.getExplorerManager().setSelectedNodes(fileNodeArray); } catch (PropertyVetoException ex) { - LOGGER.log(Level.SEVERE, "Explorer manager selection was vetoed.", ex); + LOGGER.log(Level.SEVERE, "Explorer manager selection was vetoed.", ex); //NON-NLS } }); }); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileTypeUtils.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileTypeUtils.java index 90c60bb190..72b1eba094 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileTypeUtils.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/FileTypeUtils.java @@ -93,31 +93,31 @@ public enum FileTypeUtils { .collect(Collectors.toList())); //add list of known image extensions imageExtensions.addAll(Arrays.asList( - "bmp" //Bitmap - , "gif" //gif - , "jpg", "jpeg", "jpe", "jp2", "jpx" //jpeg variants - , "pbm", "pgm", "ppm" // Portable image format variants - , "png" //portable network graphic - , "tga" //targa - , "psd" //photoshop - , "tif", "tiff" //tiff variants - , "yuv", "ico" //icons - , "ai" //illustrator - , "svg" //scalable vector graphics - , "sn", "ras" //sun raster - , "ico" //windows icons - , "tga" //targa + "bmp" //Bitmap NON-NLS + , "gif" //gif NON-NLS + , "jpg", "jpeg", "jpe", "jp2", "jpx" //jpeg variants NON-NLS + , "pbm", "pgm", "ppm" // Portable image format variants NON-NLS + , "png" //portable network graphic NON-NLS + , "tga" //targa NON-NLS + , "psd" //photoshop NON-NLS + , "tif", "tiff" //tiff variants NON-NLS + , "yuv", "ico" //icons NON-NLS + , "ai" //illustrator NON-NLS + , "svg" //scalable vector graphics NON-NLS + , "sn", "ras" //sun raster NON-NLS + , "ico" //windows icons NON-NLS + , "tga" //targa NON-NLS )); //add list of known video extensions - videoExtensions.addAll(Arrays.asList("fxm", "aaf", "3gp", "asf", "avi", - "m1v", "m2v", "m4v", "mp4", "mov", "mpeg", "mpg", "mpe", "mp4", - "rm", "wmv", "mpv", "flv", "swf")); + videoExtensions.addAll(Arrays.asList("fxm", "aaf", "3gp", "asf", "avi", //NON-NLS + "m1v", "m2v", "m4v", "mp4", "mov", "mpeg", "mpg", "mpe", "mp4", //NON-NLS + "rm", "wmv", "mpv", "flv", "swf")); //NON-NLS supportedExtensions = Sets.union(imageExtensions, videoExtensions); //add list of mimetypes to count as videos even though they aren't prefixed by video/ - videoMimeTypes.addAll(Arrays.asList("application/x-shockwave-flash")); + videoMimeTypes.addAll(Arrays.asList("application/x-shockwave-flash")); //NON-NLS supportedMimeTypes.addAll(videoMimeTypes); @@ -128,14 +128,14 @@ public enum FileTypeUtils { * fixed, we should remove application/x-123 from the list of supported * mime types. */ - supportedMimeTypes.addAll(Arrays.asList("application/x-123")); + supportedMimeTypes.addAll(Arrays.asList("application/x-123")); //NON-NLS //add list of mimetypes ImageIO claims to support supportedMimeTypes.addAll(Stream.of(ImageIO.getReaderMIMETypes()) .map(String::toLowerCase) .collect(Collectors.toList())); - supportedMimeTypes.removeIf("application/octet-stream"::equals); //this is rarely usefull + supportedMimeTypes.removeIf("application/octet-stream"::equals); //this is rarely usefull NON-NLS } public static Set getAllSupportedMimeTypes() { @@ -151,7 +151,7 @@ public enum FileTypeUtils { try { FILE_TYPE_DETECTOR = new FileTypeDetector(); } catch (FileTypeDetector.FileTypeDetectorInitException ex) { - LOGGER.log(Level.SEVERE, "Failed to initialize File Type Detector, will fall back on extensions in some situations.", ex); + LOGGER.log(Level.SEVERE, "Failed to initialize File Type Detector, will fall back on extensions in some situations.", ex); //NON-NLS } } return FILE_TYPE_DETECTOR; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java index 30c308b089..c3aedf6dcc 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java @@ -58,6 +58,7 @@ import org.apache.commons.lang3.StringUtils; import org.netbeans.api.progress.ProgressHandle; import org.netbeans.api.progress.ProgressHandleFactory; import org.openide.util.Cancellable; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.casemodule.events.ContentTagAddedEvent; import org.sleuthkit.autopsy.casemodule.events.ContentTagDeletedEvent; @@ -289,38 +290,44 @@ public final class ImageGalleryController implements Executor { * aren't, add a blocking progress spinner with appropriate message. */ @ThreadConfined(type = ThreadConfined.ThreadType.JFX) + @NbBundle.Messages({"ImageGalleryController.noGroupsDlg.msg1=No groups are fully analyzed; but listening to ingest is disabled. " + + " No groups will be available until ingest is finished and listening is re-enabled.", + "ImageGalleryController.noGroupsDlg.msg2=No groups are fully analyzed yet, but ingest is still ongoing. Please Wait.", + "ImageGalleryController.noGroupsDlg.msg3=No groups are fully analyzed yet, but image / video data is still being populated. Please Wait.", + "ImageGalleryController.noGroupsDlg.msg4=There are no images/videos available from the added datasources; but listening to ingest is disabled. " + + " No groups will be available until ingest is finished and listening is re-enabled.", + "ImageGalleryController.noGroupsDlg.msg5=There are no images/videos in the added datasources.", + "ImageGalleryController.noGroupsDlg.msg6=There are no fully analyzed groups to display:" + + " the current Group By setting resulted in no groups, " + + "or no groups are fully analyzed but ingest is not running."}) public void checkForGroups() { if (groupManager.getAnalyzedGroups().isEmpty()) { if (IngestManager.getInstance().isIngestRunning()) { if (listeningEnabled.get() == false) { replaceNotification(fullUIStackPane, - new NoGroupsDialog("No groups are fully analyzed; but listening to ingest is disabled. " - + " No groups will be available until ingest is finished and listening is re-enabled.")); + new NoGroupsDialog(Bundle.ImageGalleryController_noGroupsDlg_msg1())); } else { replaceNotification(fullUIStackPane, - new NoGroupsDialog("No groups are fully analyzed yet, but ingest is still ongoing. Please Wait.", + new NoGroupsDialog(Bundle.ImageGalleryController_noGroupsDlg_msg2(), new ProgressIndicator())); } } else if (getFileUpdateQueueSizeProperty().get() > 0) { replaceNotification(fullUIStackPane, - new NoGroupsDialog("No groups are fully analyzed yet, but image / video data is still being populated. Please Wait.", + new NoGroupsDialog(Bundle.ImageGalleryController_noGroupsDlg_msg3(), new ProgressIndicator())); } else if (db != null && db.countAllFiles() <= 0) { // there are no files in db if (listeningEnabled.get() == false) { replaceNotification(fullUIStackPane, - new NoGroupsDialog("There are no images/videos available from the added datasources; but listening to ingest is disabled. " - + " No groups will be available until ingest is finished and listening is re-enabled.")); + new NoGroupsDialog(Bundle.ImageGalleryController_noGroupsDlg_msg4())); } else { replaceNotification(fullUIStackPane, - new NoGroupsDialog("There are no images/videos in the added datasources.")); + new NoGroupsDialog(Bundle.ImageGalleryController_noGroupsDlg_msg5())); } } else if (!groupManager.isRegrouping()) { replaceNotification(centralStackPane, - new NoGroupsDialog("There are no fully analyzed groups to display:" - + " the current Group By setting resulted in no groups, " - + "or no groups are fully analyzed but ingest is not running.")); + new NoGroupsDialog(Bundle.ImageGalleryController_noGroupsDlg_msg6())); } } else { @@ -399,7 +406,7 @@ public final class ImageGalleryController implements Executor { * reset the state of the controller (eg if the case is closed) */ public synchronized void reset() { - LOGGER.info("resetting ImageGalleryControler to initial state."); + LOGGER.info("resetting ImageGalleryControler to initial state."); //NON-NLS selectionModel.clearSelection(); setListeningEnabled(false); ThumbnailCache.getDefault().clearCache(); @@ -436,7 +443,7 @@ public final class ImageGalleryController implements Executor { @Nullable synchronized public DrawableFile getFileFromId(Long fileID) throws TskCoreException { if (Objects.isNull(db)) { - LOGGER.log(Level.WARNING, "Could not get file from id, no DB set. The case is probably closed."); + LOGGER.log(Level.WARNING, "Could not get file from id, no DB set. The case is probably closed."); //NON-NLS return null; } return db.getFileFromID(fileID); @@ -462,7 +469,7 @@ public final class ImageGalleryController implements Executor { */ void onStart() { Platform.setImplicitExit(false); - LOGGER.info("setting up ImageGallery listeners"); + LOGGER.info("setting up ImageGallery listeners"); //NON-NLS //TODO can we do anything usefull in an InjestJobEventListener? //IngestManager.getInstance().addIngestJobEventListener((PropertyChangeEvent evt) -> {}); IngestManager.getInstance().addIngestModuleEventListener(new IngestModuleEventListener()); @@ -546,7 +553,7 @@ public final class ImageGalleryController implements Executor { }); } catch (InterruptedException ex) { - LOGGER.log(Level.SEVERE, "Failed to run DB worker thread", ex); + LOGGER.log(Level.SEVERE, "Failed to run DB worker thread", ex); //NON-NLS } } } @@ -559,6 +566,8 @@ public final class ImageGalleryController implements Executor { /** * Abstract base class for task to be done on {@link DBWorkerThread} */ + @NbBundle.Messages({"ImageGalleryController.InnerTask.progress.name=progress", + "ImageGalleryController.InnerTask.message.name=status"}) static public abstract class InnerTask implements Runnable, Cancellable { public double getProgress() { @@ -577,8 +586,8 @@ public final class ImageGalleryController implements Executor { this.message.set(Status); } SimpleObjectProperty state = new SimpleObjectProperty<>(Worker.State.READY); - SimpleDoubleProperty progress = new SimpleDoubleProperty(this, "pregress"); - SimpleStringProperty message = new SimpleStringProperty(this, "status"); + SimpleDoubleProperty progress = new SimpleDoubleProperty(this, Bundle.ImageGalleryController_InnerTask_progress_name()); + SimpleStringProperty message = new SimpleStringProperty(this, Bundle.ImageGalleryController_InnerTask_message_name()); public SimpleDoubleProperty progressProperty() { return progress; @@ -659,7 +668,7 @@ public final class ImageGalleryController implements Executor { // This is one of the places where we get many errors if the case is closed during processing. // We don't want to print out a ton of exceptions if this is the case. if (Case.isCaseOpen()) { - Logger.getLogger(UpdateFileTask.class.getName()).log(Level.SEVERE, "Error in UpdateFile task"); + Logger.getLogger(UpdateFileTask.class.getName()).log(Level.SEVERE, "Error in UpdateFile task"); //NON-NLS } } } @@ -685,7 +694,7 @@ public final class ImageGalleryController implements Executor { // This is one of the places where we get many errors if the case is closed during processing. // We don't want to print out a ton of exceptions if this is the case. if (Case.isCaseOpen()) { - Logger.getLogger(RemoveFileTask.class.getName()).log(Level.SEVERE, "Case was closed out from underneath RemoveFile task"); + Logger.getLogger(RemoveFileTask.class.getName()).log(Level.SEVERE, "Case was closed out from underneath RemoveFile task"); //NON-NLS } } @@ -699,6 +708,10 @@ public final class ImageGalleryController implements Executor { * adds them to the Drawable DB. Uses the presence of a mimetype as an * approximation to 'analyzed'. */ + @NbBundle.Messages({"CopyAnalyzedFiles.populatingDb.status=populating analyzed image/video database", + "CopyAnalyzedFiles.committingDb.status=commiting image/video database", + "CopyAnalyzedFiles.stopCopy.status=Stopping copy to drawable db task.", + "CopyAnalyzedFiles.errPopulating.errMsg=There was an error populating Image Gallery database."}) static private class CopyAnalyzedFiles extends InnerTask { private final ImageGalleryController controller; @@ -712,28 +725,28 @@ public final class ImageGalleryController implements Executor { } static private final String FILE_EXTENSION_CLAUSE = - "(name LIKE '%." - + StringUtils.join(FileTypeUtils.getAllSupportedExtensions(), "' OR name LIKE '%.") + "(name LIKE '%." //NON-NLS + + StringUtils.join(FileTypeUtils.getAllSupportedExtensions(), "' OR name LIKE '%.") //NON-NLS + "')"; static private final String MIMETYPE_CLAUSE = - "(mime_type LIKE '" - + StringUtils.join(FileTypeUtils.getAllSupportedMimeTypes(), "' OR mime_type LIKE '") + "(mime_type LIKE '" //NON-NLS + + StringUtils.join(FileTypeUtils.getAllSupportedMimeTypes(), "' OR mime_type LIKE '") //NON-NLS + "') "; static private final String DRAWABLE_QUERY = //grab files with supported extension FILE_EXTENSION_CLAUSE //grab files with supported mime-types - + " OR " + MIMETYPE_CLAUSE + + " OR " + MIMETYPE_CLAUSE //NON-NLS //grab files with image or video mime-types even if we don't officially support them - + " OR mime_type LIKE 'video/%' OR mime_type LIKE 'image/%'"; - private ProgressHandle progressHandle = ProgressHandleFactory.createHandle("populating analyzed image/video database"); + + " OR mime_type LIKE 'video/%' OR mime_type LIKE 'image/%'"; //NON-NLS + private ProgressHandle progressHandle = ProgressHandleFactory.createHandle(Bundle.CopyAnalyzedFiles_populatingDb_status()); @Override public void run() { progressHandle.start(); - updateMessage("populating analyzed image/video database"); + updateMessage(Bundle.CopyAnalyzedFiles_populatingDb_status()); try { //grab all files with supported extension or detected mime types @@ -747,7 +760,7 @@ public final class ImageGalleryController implements Executor { int units = 0; for (final AbstractFile f : files) { if (isCancelled()) { - LOGGER.log(Level.WARNING, "Task cancelled: not all contents may be transfered to drawable database."); + LOGGER.log(Level.WARNING, "Task cancelled: not all contents may be transfered to drawable database."); //NON-NLS progressHandle.finish(); break; } @@ -786,17 +799,17 @@ public final class ImageGalleryController implements Executor { progressHandle.finish(); - progressHandle = ProgressHandleFactory.createHandle("commiting image/video database"); - updateMessage("commiting image/video database"); + progressHandle = ProgressHandleFactory.createHandle(Bundle.CopyAnalyzedFiles_committingDb_status()); + updateMessage(Bundle.CopyAnalyzedFiles_committingDb_status()); updateProgress(1.0); progressHandle.start(); taskDB.commitTransaction(tr, true); } catch (TskCoreException ex) { - progressHandle.progress("Stopping copy to drawable db task."); - Logger.getLogger(CopyAnalyzedFiles.class.getName()).log(Level.WARNING, "Stopping copy to drawable db task. Failed to transfer all database contents: " + ex.getMessage()); - MessageNotifyUtil.Notify.warn("There was an error populating Image Gallery database.", ex.getMessage()); + progressHandle.progress(Bundle.CopyAnalyzedFiles_stopCopy_status()); + Logger.getLogger(CopyAnalyzedFiles.class.getName()).log(Level.WARNING, "Stopping copy to drawable db task. Failed to transfer all database contents: " + ex.getMessage()); //NON-NLS + MessageNotifyUtil.Notify.warn(Bundle.CopyAnalyzedFiles_errPopulating_errMsg(), ex.getMessage()); progressHandle.finish(); updateMessage(""); updateProgress(-1.0); @@ -818,6 +831,8 @@ public final class ImageGalleryController implements Executor { * TODO: create methods to simplify progress value/text updates to both * netbeans and ImageGallery progress/status */ + @NbBundle.Messages({"PrePopulateDataSourceFiles.prepopulatingDb.status=prepopulating image/video database", + "PrePopulateDataSourceFiles.committingDb.status=commiting image/video database"}) private class PrePopulateDataSourceFiles extends InnerTask { private final Content dataSource; @@ -828,9 +843,9 @@ public final class ImageGalleryController implements Executor { * check for supported images */ // (name like '.jpg' or name like '.png' ...) - private final String DRAWABLE_QUERY = "(name LIKE '%." + StringUtils.join(FileTypeUtils.getAllSupportedExtensions(), "' OR name LIKE '%.") + "') "; + private final String DRAWABLE_QUERY = "(name LIKE '%." + StringUtils.join(FileTypeUtils.getAllSupportedExtensions(), "' OR name LIKE '%.") + "') "; //NON-NLS - private ProgressHandle progressHandle = ProgressHandleFactory.createHandle("prepopulating image/video database", this); + private ProgressHandle progressHandle = ProgressHandleFactory.createHandle(Bundle.PrePopulateDataSourceFiles_prepopulatingDb_status(), this); /** * @@ -850,10 +865,10 @@ public final class ImageGalleryController implements Executor { @Override public void run() { progressHandle.start(); - updateMessage("prepopulating image/video database"); + updateMessage(Bundle.PrePopulateDataSourceFiles_prepopulatingDb_status()); try { - String fsQuery = "(fs_obj_id IS NULL) "; //default clause + String fsQuery = "(fs_obj_id IS NULL) "; //default clause NON-NLS /* * NOTE: Logical files currently (Apr '15) have a null value for * fs_obj_id in DB. for them, we will not specify a fs_obj_id, @@ -874,10 +889,10 @@ public final class ImageGalleryController implements Executor { //use this clause to only grab files from the newly added filesystems. fsQuery = fileSystems.stream() .map(fileSystem -> String.valueOf(fileSystem.getId())) - .collect(Collectors.joining(" OR fs_obj_id = ", "(fs_obj_id = ", ") ")); + .collect(Collectors.joining(" OR fs_obj_id = ", "(fs_obj_id = ", ") ")); //NON-NLS } - final List files = getSleuthKitCase().findAllFilesWhere(fsQuery + " AND " + DRAWABLE_QUERY); + final List files = getSleuthKitCase().findAllFilesWhere(fsQuery + " AND " + DRAWABLE_QUERY); //NON-NLS progressHandle.switchToDeterminate(files.size()); //do in transaction @@ -885,7 +900,7 @@ public final class ImageGalleryController implements Executor { int units = 0; for (final AbstractFile f : files) { if (isCancelled()) { - LOGGER.log(Level.WARNING, "task cancelled: not all contents may be transfered to database"); + LOGGER.log(Level.WARNING, "task cancelled: not all contents may be transfered to database"); //NON-NLS progressHandle.finish(); break; } @@ -895,13 +910,13 @@ public final class ImageGalleryController implements Executor { } progressHandle.finish(); - progressHandle = ProgressHandleFactory.createHandle("commiting image/video database"); + progressHandle = ProgressHandleFactory.createHandle(Bundle.PrePopulateDataSourceFiles_committingDb_status()); progressHandle.start(); db.commitTransaction(tr, false); } catch (TskCoreException ex) { - Logger.getLogger(PrePopulateDataSourceFiles.class.getName()).log(Level.WARNING, "failed to transfer all database contents", ex); + Logger.getLogger(PrePopulateDataSourceFiles.class.getName()).log(Level.WARNING, "failed to transfer all database contents", ex); //NON-NLS } progressHandle.finish(); @@ -956,7 +971,7 @@ public final class ImageGalleryController implements Executor { } } catch (TskCoreException ex) { //TODO: What to do here? - LOGGER.log(Level.WARNING, "Unable to determine if file is drawable and not known. Not making any changes to DB", ex); + LOGGER.log(Level.WARNING, "Unable to determine if file is drawable and not known. Not making any changes to DB", ex); //NON-NLS throw new RuntimeException(ex); } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryModule.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryModule.java index 0a37825f54..770df56132 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryModule.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryModule.java @@ -22,6 +22,8 @@ import java.nio.file.Path; import java.nio.file.Paths; import org.apache.commons.lang3.StringUtils; import static org.apache.commons.lang3.StringUtils.isNotBlank; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.imagegallery.datamodel.DrawableDB; @@ -30,11 +32,12 @@ import org.sleuthkit.datamodel.TskCoreException; import org.sleuthkit.datamodel.TskData; /** static definitions and utilities for the ImageGallery module */ +@NbBundle.Messages({"ImageGalleryModule.moduleName=Image Gallery"}) public class ImageGalleryModule { private static final Logger LOGGER = Logger.getLogger(ImageGalleryModule.class.getName()); - private static final String MODULE_NAME = "Image Gallery"; + private static final String MODULE_NAME = Bundle.ImageGalleryModule_moduleName(); static String getModuleName() { return MODULE_NAME; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryOptionsPanel.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryOptionsPanel.java index be83d9e236..bb44a60ec1 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryOptionsPanel.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryOptionsPanel.java @@ -18,6 +18,7 @@ */ package org.sleuthkit.autopsy.imagegallery; +import java.awt.*; import java.awt.event.ActionEvent; import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.Case; @@ -83,17 +84,17 @@ final class ImageGalleryOptionsPanel extends javax.swing.JPanel { furtherDescriptionArea.setBackground(new java.awt.Color(240, 240, 240)); furtherDescriptionArea.setColumns(20); - furtherDescriptionArea.setFont(new java.awt.Font("Tahoma", 0, 11)); // NOI18N + furtherDescriptionArea.setFont(furtherDescriptionArea.getFont().deriveFont(Font.PLAIN, 11)); // NOI18N furtherDescriptionArea.setLineWrap(true); furtherDescriptionArea.setRows(5); furtherDescriptionArea.setText(NbBundle.getMessage(ImageGalleryOptionsPanel.class, "ImageGalleryOptionsPanel.furtherDescriptionArea.text")); // NOI18N furtherDescriptionArea.setWrapStyleWord(true); furtherDescriptionArea.setPreferredSize(new java.awt.Dimension(378, 74)); - infoIconLabel.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/imagegallery/images/info-icon-16.png"))); // NOI18N + infoIconLabel.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/imagegallery/images/info-icon-16.png"))); // NOI18N NON-NLS org.openide.awt.Mnemonics.setLocalizedText(infoIconLabel, NbBundle.getMessage(ImageGalleryOptionsPanel.class, "ImageGalleryOptionsPanel.infoIconLabel.text")); // NOI18N - unavailableDuringInjestLabel.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/imagegallery/images/warning16.png"))); // NOI18N + unavailableDuringInjestLabel.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/imagegallery/images/warning16.png"))); // NOI18N NON-NLS org.openide.awt.Mnemonics.setLocalizedText(unavailableDuringInjestLabel, NbBundle.getMessage(ImageGalleryOptionsPanel.class, "ImageGalleryOptionsPanel.unavailableDuringInjestLabel.text")); // NOI18N javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryPreferences.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryPreferences.java index 5a89b5f257..51c0b5cb85 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryPreferences.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryPreferences.java @@ -29,7 +29,7 @@ class ImageGalleryPreferences { private static final Preferences preferences = NbPreferences.forModule(ImageGalleryPreferences.class); /** key for the listening enabled for new cases setting */ - private static final String ENABLED_BY_DEFAULT = "enabled_by_default"; + private static final String ENABLED_BY_DEFAULT = "enabled_by_default"; //NON-NLS /** * Return setting of whether Image Analyzer should be automatically enabled diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryTopComponent.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryTopComponent.java index d1e8f3a236..e927312ee3 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryTopComponent.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryTopComponent.java @@ -68,7 +68,7 @@ import org.sleuthkit.autopsy.imagegallery.gui.navpanel.HashHitGroupList; }) public final class ImageGalleryTopComponent extends TopComponent implements ExplorerManager.Provider, Lookup.Provider { - public final static String PREFERRED_ID = "ImageGalleryTopComponent"; + public final static String PREFERRED_ID = "ImageGalleryTopComponent"; // NON-NLS private static final Logger LOGGER = Logger.getLogger(ImageGalleryTopComponent.class.getName()); private static boolean topComponentInitialized = false; @@ -81,11 +81,11 @@ public final class ImageGalleryTopComponent extends TopComponent implements Expl // } // } // timeLineController.openTimeLine(); - final ImageGalleryTopComponent tc = (ImageGalleryTopComponent) WindowManager.getDefault().findTopComponent("ImageGalleryTopComponent"); + final ImageGalleryTopComponent tc = (ImageGalleryTopComponent) WindowManager.getDefault().findTopComponent(PREFERRED_ID); if (tc != null) { topComponentInitialized = true; WindowManager.getDefault().isTopComponentFloating(tc); - Mode mode = WindowManager.getDefault().findMode("timeline"); + Mode mode = WindowManager.getDefault().findMode("timeline"); // NON-NLS if (mode != null) { mode.dockInto(tc); } @@ -96,12 +96,12 @@ public final class ImageGalleryTopComponent extends TopComponent implements Expl public static void closeTopComponent() { if (topComponentInitialized) { - final TopComponent etc = WindowManager.getDefault().findTopComponent("ImageGalleryTopComponent"); + final TopComponent etc = WindowManager.getDefault().findTopComponent(PREFERRED_ID); if (etc != null) { try { etc.close(); } catch (Exception e) { - LOGGER.log(Level.SEVERE, "failed to close ImageGalleryTopComponent", e); + LOGGER.log(Level.SEVERE, "failed to close " + PREFERRED_ID, e); // NON-NLS } } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/PerCaseProperties.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/PerCaseProperties.java index 75a35fc798..89a40977f3 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/PerCaseProperties.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/PerCaseProperties.java @@ -37,9 +37,9 @@ import org.sleuthkit.autopsy.coreutils.Logger; */ class PerCaseProperties { - public static final String ENABLED = "enabled"; + public static final String ENABLED = "enabled"; //NON-NLS - public static final String STALE = "stale"; + public static final String STALE = "stale"; //NON-NLS private final Case theCase; @@ -88,7 +88,7 @@ class PerCaseProperties { * @return true if the config exists, false otherwise. */ public synchronized boolean configExists(String moduleName) { - Path get = Paths.get(theCase.getModuleDirectory(), moduleName, theCase.getName() + ".properties"); + Path get = Paths.get(theCase.getModuleDirectory(), moduleName, theCase.getName() + ".properties"); //NON-NLS return Files.exists(get); } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java index 67c4a10dfa..a0c962c775 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java @@ -101,7 +101,7 @@ public enum ThumbnailCache { try { return cache.get(file.getId(), () -> load(file)); } catch (UncheckedExecutionException | CacheLoader.InvalidCacheLoadException | ExecutionException ex) { - LOGGER.log(Level.WARNING, "Failed to load thumbnail for file: " + file.getName(), ex.getCause()); + LOGGER.log(Level.WARNING, "Failed to load thumbnail for file: " + file.getName(), ex.getCause()); //NON-NLS return null; } } @@ -111,7 +111,7 @@ public enum ThumbnailCache { try { return get(ImageGalleryController.getDefault().getFileFromId(fileID)); } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "Failed to load thumbnail for file: " + fileID, ex.getCause()); + LOGGER.log(Level.WARNING, "Failed to load thumbnail for file: " + fileID, ex.getCause()); //NON-NLS return null; } } @@ -142,9 +142,9 @@ public enum ThumbnailCache { return cachedThumbnail; } } catch (MalformedURLException ex) { - LOGGER.log(Level.WARNING, "Unable to parse cache file path: " + cachFile.getPath(), ex); + LOGGER.log(Level.WARNING, "Unable to parse cache file path: " + cachFile.getPath(), ex); //NON-NLS } catch (IOException ex) { - LOGGER.log(Level.WARNING, "Unable to read cache file " + cachFile.getPath(), ex); + LOGGER.log(Level.WARNING, "Unable to read cache file " + cachFile.getPath(), ex); //NON-NLS } } return null; @@ -176,7 +176,7 @@ public enum ThumbnailCache { return Optional.of(ImageUtils.getCachedThumbnailFile(file.getAbstractFile(), MAX_THUMBNAIL_SIZE)); } catch (Exception e) { - LOGGER.log(Level.WARNING, "Failed to create cache file.{0}", e.getLocalizedMessage()); + LOGGER.log(Level.WARNING, "Failed to create cache file.{0}", e.getLocalizedMessage()); //NON-NLS return Optional.empty(); } } @@ -193,7 +193,7 @@ public enum ThumbnailCache { try { cache.put(Long.MIN_VALUE, newGetThumbnailTask.get()); } catch (InterruptedException | ExecutionException ex) { - LOGGER.log(Level.SEVERE, "There was an exception even though thumbnail task succedded for. This should not be possible.", ex); + LOGGER.log(Level.SEVERE, "There was an exception even though thumbnail task succedded for. This should not be possible.", ex); //NON-NLS } } }); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddDrawableTagAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddDrawableTagAction.java index 28a377aade..92e9a979c2 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddDrawableTagAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddDrawableTagAction.java @@ -28,6 +28,8 @@ import javafx.application.Platform; import javafx.scene.control.Alert; import javafx.scene.control.Menu; import javax.swing.SwingWorker; + +import org.openide.util.NbBundle; import org.openide.util.Utilities; import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; @@ -59,8 +61,12 @@ public class AddDrawableTagAction extends AddTagAction { } @Override + @NbBundle.Messages({"AddDrawableTagAction.displayName.plural=Tag Files", + "AddDrawableTagAction.displayName.singular=Tag File"}) protected String getActionDisplayName() { - return Utilities.actionsGlobalContext().lookupAll(AbstractFile.class).size() > 1 ? "Tag Files" : "Tag File"; + return Utilities.actionsGlobalContext().lookupAll(AbstractFile.class).size() > 1 + ? Bundle.AddDrawableTagAction_displayName_plural() + : Bundle.AddDrawableTagAction_displayName_singular(); } @Override @@ -70,6 +76,8 @@ public class AddDrawableTagAction extends AddTagAction { } @Override + @NbBundle.Messages({"# {0} - fileID", + "AddDrawableTagAction.addTagsToFiles.alert=Unable to tag file {0}."}) public void addTagsToFiles(TagName tagName, String comment, Set selectedFiles) { new SwingWorker() { @@ -78,7 +86,7 @@ public class AddDrawableTagAction extends AddTagAction { for (Long fileID : selectedFiles) { try { final DrawableFile file = controller.getFileFromId(fileID); - LOGGER.log(Level.INFO, "tagging {0} with {1} and comment {2}", new Object[]{file.getName(), tagName.getDisplayName(), comment}); + LOGGER.log(Level.INFO, "tagging {0} with {1} and comment {2}", new Object[]{file.getName(), tagName.getDisplayName(), comment}); //NON-NLS // check if the same tag is being added for the same abstract file. DrawableTagsManager tagsManager = controller.getTagsManager(); @@ -89,16 +97,16 @@ public class AddDrawableTagAction extends AddTagAction { .findAny(); if (duplicateTagName.isPresent()) { - LOGGER.log(Level.INFO, "{0} already tagged as {1}. Skipping.", new Object[]{file.getName(), tagName.getDisplayName()}); + LOGGER.log(Level.INFO, "{0} already tagged as {1}. Skipping.", new Object[]{file.getName(), tagName.getDisplayName()}); //NON-NLS } else { - LOGGER.log(Level.INFO, "Tagging {0} as {1}", new Object[]{file.getName(), tagName.getDisplayName()}); + LOGGER.log(Level.INFO, "Tagging {0} as {1}", new Object[]{file.getName(), tagName.getDisplayName()}); //NON-NLS controller.getTagsManager().addContentTag(file, tagName, comment); } } catch (TskCoreException tskCoreException) { - LOGGER.log(Level.SEVERE, "Error tagging file", tskCoreException); + LOGGER.log(Level.SEVERE, "Error tagging file", tskCoreException); //NON-NLS Platform.runLater(() -> { - new Alert(Alert.AlertType.ERROR, "Unable to tag file " + fileID + ".").show(); + new Alert(Alert.AlertType.ERROR, Bundle.AddDrawableTagAction_addTagsToFiles_alert(fileID)).show(); }); } } @@ -111,7 +119,7 @@ public class AddDrawableTagAction extends AddTagAction { try { get(); } catch (InterruptedException | ExecutionException ex) { - LOGGER.log(Level.SEVERE, "unexpected exception while tagging files", ex); + LOGGER.log(Level.SEVERE, "unexpected exception while tagging files", ex); //NON-NLS } } }.execute(); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddTagAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddTagAction.java index 91c2af6503..7742ec583c 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddTagAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/AddTagAction.java @@ -25,6 +25,8 @@ import javafx.event.ActionEvent; import javafx.scene.control.Menu; import javafx.scene.control.MenuItem; import javax.swing.SwingUtilities; + +import org.openide.util.NbBundle; import org.openide.windows.TopComponent; import org.openide.windows.WindowManager; import org.sleuthkit.autopsy.actions.GetTagNameAndCommentDialog; @@ -71,13 +73,17 @@ abstract class AddTagAction { */ // @@@ This user interface has some significant usability issues and needs // to be reworked. + @NbBundle.Messages({"AddTagAction.menuItem.quickTag=Quick Tag", + "AddTagAction.menuItem.noTags=No tags", + "AddTagAction.menuItem.newTag=New Tag...", + "AddTagAction.menuItem.tagAndComment=Tag and Comment..."}) protected class TagMenu extends Menu { TagMenu(ImageGalleryController controller) { super(getActionDisplayName()); // Create a "Quick Tag" sub-menu. - Menu quickTagMenu = new Menu("Quick Tag"); + Menu quickTagMenu = new Menu(Bundle.AddTagAction_menuItem_quickTag()); getItems().add(quickTagMenu); /* @@ -87,7 +93,7 @@ abstract class AddTagAction { */ Collection tagNames = controller.getTagsManager().getNonCategoryTagNames(); if (tagNames.isEmpty()) { - MenuItem empty = new MenuItem("No tags"); + MenuItem empty = new MenuItem(Bundle.AddTagAction_menuItem_noTags()); empty.setDisable(true); quickTagMenu.getItems().add(empty); } else { @@ -105,7 +111,7 @@ abstract class AddTagAction { * Selecting this item initiates a dialog that can be used to create * or select a tag name and adds a tag with the resulting name. */ - MenuItem newTagMenuItem = new MenuItem("New Tag..."); + MenuItem newTagMenuItem = new MenuItem(Bundle.AddTagAction_menuItem_newTag()); newTagMenuItem.setOnAction((ActionEvent t) -> { SwingUtilities.invokeLater(() -> { TagName tagName = GetTagNameDialog.doDialog(getIGWindow()); @@ -122,7 +128,7 @@ abstract class AddTagAction { * name with an optional comment and adds a tag with the resulting * name. */ - MenuItem tagAndCommentItem = new MenuItem("Tag and Comment..."); + MenuItem tagAndCommentItem = new MenuItem(Bundle.AddTagAction_menuItem_tagAndComment()); tagAndCommentItem.setOnAction((ActionEvent t) -> { SwingUtilities.invokeLater(() -> { GetTagNameAndCommentDialog.TagNameAndComment tagNameAndComment = GetTagNameAndCommentDialog.doDialog(getIGWindow()); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Back.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Back.java index 4488d94967..ca11b8420a 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Back.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Back.java @@ -24,20 +24,22 @@ import javafx.scene.image.ImageView; import javafx.scene.input.KeyCode; import javafx.scene.input.KeyCodeCombination; import org.controlsfx.control.action.Action; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; /** * */ //TODO: This and the corresponding timeline action are identical except for the type of the controller... abstract something! -jm +@NbBundle.Messages({"Back_diplayName=Back"}) public class Back extends Action { - private static final Image BACK_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/arrow-180.png", 16, 16, true, true, true); + private static final Image BACK_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/arrow-180.png", 16, 16, true, true, true); //NON-NLS private final ImageGalleryController controller; public Back(ImageGalleryController controller) { - super("Back"); + super(Bundle.Back_diplayName()); setGraphic(new ImageView(BACK_IMAGE)); setAccelerator(new KeyCodeCombination(KeyCode.LEFT, KeyCodeCombination.ALT_DOWN)); this.controller = controller; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/CategorizeAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/CategorizeAction.java index 9d89b4fb1b..8c819373c8 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/CategorizeAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/CategorizeAction.java @@ -35,6 +35,8 @@ import javafx.scene.input.KeyCodeCombination; import javax.annotation.Nonnull; import javax.annotation.concurrent.Immutable; import javax.swing.JOptionPane; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; import org.sleuthkit.autopsy.imagegallery.datamodel.Category; @@ -52,6 +54,7 @@ import org.sleuthkit.datamodel.TskCoreException; * TODO: since we are not using actionsGlobalContext anymore and this has * diverged from autopsy action, make this extend from controlsfx Action */ +@NbBundle.Messages({"CategorizeAction.displayName=Categorize"}) public class CategorizeAction extends AddTagAction { private static final Logger LOGGER = Logger.getLogger(CategorizeAction.class.getName()); @@ -71,7 +74,7 @@ public class CategorizeAction extends AddTagAction { @Override protected String getActionDisplayName() { - return "Categorize"; + return Bundle.CategorizeAction_displayName(); } @Override @@ -86,7 +89,7 @@ public class CategorizeAction extends AddTagAction { } public void addTagsToFiles(TagName tagName, String comment, Set selectedFiles, boolean createUndo) { - Logger.getAnonymousLogger().log(Level.INFO, "categorizing{0} as {1}", new Object[]{selectedFiles.toString(), tagName.getDisplayName()}); + Logger.getAnonymousLogger().log(Level.INFO, "categorizing{0} as {1}", new Object[]{selectedFiles.toString(), tagName.getDisplayName()}); //NON-NLS controller.queueDBWorkerTask(new CategorizeTask(selectedFiles, tagName, comment, createUndo)); } @@ -97,7 +100,7 @@ public class CategorizeAction extends AddTagAction { static private class CategoryMenu extends Menu { CategoryMenu(ImageGalleryController controller) { - super("Categorize"); + super(Bundle.CategorizeAction_displayName()); // Each category get an item in the sub-menu. Selecting one of these menu items adds // a tag with the associated category. @@ -114,6 +117,9 @@ public class CategorizeAction extends AddTagAction { } } + @NbBundle.Messages({"# {0} - fileID number", + "CategorizeTask.errorUnable.msg=Unable to categorize {0}.", + "CategorizeTask.errorUnable.title=Categorizing Error"}) private class CategorizeTask extends ImageGalleryController.InnerTask { private final Set fileIDs; @@ -132,6 +138,7 @@ public class CategorizeAction extends AddTagAction { } + @Override public void run() { final DrawableTagsManager tagsManager = controller.getTagsManager(); @@ -157,7 +164,7 @@ public class CategorizeAction extends AddTagAction { try { tagsManager.deleteContentTag(ct); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Error removing old categories result", ex); + LOGGER.log(Level.SEVERE, "Error removing old categories result", ex); //NON-NLS } }); } else { @@ -170,8 +177,11 @@ public class CategorizeAction extends AddTagAction { } } } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Error categorizing result", ex); - JOptionPane.showMessageDialog(null, "Unable to categorize " + fileID + ".", "Categorizing Error", JOptionPane.ERROR_MESSAGE); + LOGGER.log(Level.SEVERE, "Error categorizing result", ex); //NON-NLS + JOptionPane.showMessageDialog(null, + Bundle.CategorizeTask_errorUnable_msg(fileID), + Bundle.CategorizeTask_errorUnable_title(), + JOptionPane.ERROR_MESSAGE); } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/DeleteFollowUpTagAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/DeleteFollowUpTagAction.java index 27ab1cd8b1..57f8afa2cf 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/DeleteFollowUpTagAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/DeleteFollowUpTagAction.java @@ -23,6 +23,7 @@ import java.util.logging.Level; import javafx.event.ActionEvent; import javax.swing.SwingWorker; import org.controlsfx.control.action.Action; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; import org.sleuthkit.autopsy.imagegallery.datamodel.DrawableFile; @@ -38,8 +39,9 @@ public class DeleteFollowUpTagAction extends Action { private static final Logger LOGGER = Logger.getLogger(DeleteFollowUpTagAction.class.getName()); + @NbBundle.Messages("DeleteFollwUpTagAction.displayName=Delete Follow Up Tag") public DeleteFollowUpTagAction(final ImageGalleryController controller, final DrawableFile file) { - super("Delete Follow Up Tag"); + super(Bundle.DeleteFollwUpTagAction_displayName()); setEventHandler((ActionEvent t) -> { new SwingWorker() { @@ -57,7 +59,7 @@ public class DeleteFollowUpTagAction extends Action { } } } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to delete follow up tag.", ex); + LOGGER.log(Level.SEVERE, "Failed to delete follow up tag.", ex); //NON-NLS } return null; } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Forward.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Forward.java index c94cfc5ffb..1688d6e6d2 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Forward.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/Forward.java @@ -24,20 +24,22 @@ import javafx.scene.image.ImageView; import javafx.scene.input.KeyCode; import javafx.scene.input.KeyCodeCombination; import org.controlsfx.control.action.Action; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; /** * */ //TODO: This and the corresponding timeline action are identical except for the type of the controller... abstract something! -jm +@NbBundle.Messages({"Forward.displayName=Forward"}) public class Forward extends Action { - private static final Image BACK_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/arrow.png", 16, 16, true, true, true); + private static final Image BACK_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/arrow.png", 16, 16, true, true, true); //NON-NLS private final ImageGalleryController controller; public Forward(ImageGalleryController controller) { - super("Forward"); + super(Bundle.Forward_displayName()); setGraphic(new ImageView(BACK_IMAGE)); setAccelerator(new KeyCodeCombination(KeyCode.RIGHT, KeyCodeCombination.ALT_DOWN)); this.controller = controller; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/NextUnseenGroup.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/NextUnseenGroup.java index 0d446cda84..a5e9215a6b 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/NextUnseenGroup.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/NextUnseenGroup.java @@ -26,6 +26,7 @@ import javafx.event.ActionEvent; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import org.controlsfx.control.action.Action; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.ThreadConfined; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; import org.sleuthkit.autopsy.imagegallery.datamodel.grouping.GroupViewState; @@ -34,15 +35,17 @@ import org.sleuthkit.autopsy.imagegallery.datamodel.grouping.GroupViewState; * Marks the currently fisplayed group as "seen" and advances to the next unseen * group */ +@NbBundle.Messages({"NextUnseenGroup.markGroupSeen=Mark Group Seen", + "NextUnseenGroup.nextUnseenGroup=Next Unseen group"}) public class NextUnseenGroup extends Action { private static final Image END = - new Image(NextUnseenGroup.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/control-stop.png")); + new Image(NextUnseenGroup.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/control-stop.png")); //NON-NLS private static final Image ADVANCE = - new Image(NextUnseenGroup.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/control-double.png")); + new Image(NextUnseenGroup.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/control-double.png")); //NON-NLS - private static final String MARK_GROUP_SEEN = "Mark Group Seen"; - private static final String NEXT_UNSEEN_GROUP = "Next Unseen group"; + private static final String MARK_GROUP_SEEN = Bundle.NextUnseenGroup_markGroupSeen(); + private static final String NEXT_UNSEEN_GROUP = Bundle.NextUnseenGroup_nextUnseenGroup(); private final ImageGalleryController controller; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenAction.java index b1f1f651b7..ea0d04abf8 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenAction.java @@ -41,10 +41,14 @@ import org.sleuthkit.autopsy.imagegallery.ImageGalleryTopComponent; @ActionRegistration( // iconBase = "org/sleuthkit/autopsy/imagegallery/images/lightbulb.png", lazy = false, displayName = "#CTL_OpenAction") -@Messages("CTL_OpenAction=View Images/Videos") +@Messages({"CTL_OpenAction=View Images/Videos", + "OpenAction.stale.confDlg.msg=The image / video database may be out of date. " + + "Do you want to update and listen for further ingest results?\n" + + "Choosing 'yes' will update the database and enable listening to future ingests.", + "OpenAction.stale.confDlg.title=Image Gallery"}) public final class OpenAction extends CallableSystemAction { - private static final String VIEW_IMAGES_VIDEOS = "View Images/Videos"; + private static final String VIEW_IMAGES_VIDEOS = Bundle.CTL_OpenAction(); private static final boolean fxInited = Installer.isJavaFxInited(); @@ -83,11 +87,8 @@ public final class OpenAction extends CallableSystemAction { if (ImageGalleryModule.isDrawableDBStale(currentCase)) { //drawable db is stale, ask what to do - int answer = JOptionPane.showConfirmDialog(WindowManager.getDefault().getMainWindow(), "The image / video database may be out of date. " + "Do you want to update and listen for further ingest results?\n" - + "Choosing 'yes' will update the database and enable listening to future ingests." - + " Choosing 'no' will display the out of date results." - + " Choosing 'cancel' will close the image /video gallery", - "Image Gallery", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE); + int answer = JOptionPane.showConfirmDialog(WindowManager.getDefault().getMainWindow(), Bundle.OpenAction_stale_confDlg_msg(), + Bundle.OpenAction_stale_confDlg_title(), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE); switch (answer) { case JOptionPane.YES_OPTION: diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenExternalViewerAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenExternalViewerAction.java index ba33d077ba..20d6357241 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenExternalViewerAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenExternalViewerAction.java @@ -32,14 +32,15 @@ import org.sleuthkit.autopsy.imagegallery.datamodel.DrawableFile; * Wraps {@link ExternalViewerAction} in a ControlsFX {@link Action} with * appropriate text and graphic */ -@NbBundle.Messages({"MediaViewImagePanel.externalViewerButton.text=Open in External Viewer"}) +@NbBundle.Messages({"MediaViewImagePanel.externalViewerButton.text=Open in External Viewer", + "OpenExternalViewerAction.displayName=External Viewer"}) public class OpenExternalViewerAction extends Action { - private static final Image EXTERNAL = new Image(OpenExternalViewerAction.class.getResource("/org/sleuthkit/autopsy/imagegallery/images/external.png").toExternalForm()); + private static final Image EXTERNAL = new Image(OpenExternalViewerAction.class.getResource("/org/sleuthkit/autopsy/imagegallery/images/external.png").toExternalForm()); //NON-NLS private static final ActionEvent ACTION_EVENT = new ActionEvent(OpenExternalViewerAction.class, ActionEvent.ACTION_PERFORMED, ""); //Swing ActionEvent //NOI18N public OpenExternalViewerAction(DrawableFile file) { - super("External Viewer"); + super(Bundle.OpenExternalViewerAction_displayName()); /** * TODO: why is the name passed to the action? it means we duplicate diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenHelpAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenHelpAction.java index a75a786317..265412146f 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenHelpAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/OpenHelpAction.java @@ -44,9 +44,9 @@ public final class OpenHelpAction implements ActionListener { @Override public void actionPerformed(ActionEvent e) { try { - Desktop.getDesktop().browse(URI.create("http://sleuthkit.org/autopsy/docs/user-docs/4.0/image_gallery_page.html")); + Desktop.getDesktop().browse(URI.create("http://sleuthkit.org/autopsy/docs/user-docs/4.0/image_gallery_page.html")); //NON-NLS } catch (IOException ex) { - Logger.getLogger(OpenHelpAction.class.getName()).log(Level.SEVERE, "failed to open help page", ex); + Logger.getLogger(OpenHelpAction.class.getName()).log(Level.SEVERE, "failed to open help page", ex); //NON-NLS } } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/RedoAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/RedoAction.java index e3ce54cd7c..2e0f4d0d9d 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/RedoAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/RedoAction.java @@ -23,17 +23,19 @@ import javafx.scene.image.ImageView; import javafx.scene.input.KeyCode; import javafx.scene.input.KeyCodeCombination; import org.controlsfx.control.action.Action; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; /** * Action that redoes the last undone command */ +@NbBundle.Messages({"RedoAction.name=Redo"}) public class RedoAction extends Action { - private static final Image REDO_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/redo.png", 16, 16, true, true, true); + private static final Image REDO_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/redo.png", 16, 16, true, true, true); //NON-NLS public RedoAction(ImageGalleryController controller) { - super("Redo"); + super(Bundle.RedoAction_name()); setGraphic(new ImageView(REDO_IMAGE)); setAccelerator(new KeyCodeCombination(KeyCode.Y, KeyCodeCombination.CONTROL_DOWN)); setEventHandler(actionEvent -> controller.getUndoManager().redo()); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/UndoAction.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/UndoAction.java index 0285c57bb7..1cc673808f 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/UndoAction.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/actions/UndoAction.java @@ -23,17 +23,19 @@ import javafx.scene.image.ImageView; import javafx.scene.input.KeyCode; import javafx.scene.input.KeyCodeCombination; import org.controlsfx.control.action.Action; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; /** * Action that undoes the last undoable command */ +@NbBundle.Messages({"UndoAction.displayName=Undo"}) public class UndoAction extends Action { - private static final Image UNDO_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/undo.png", 16, 16, true, true, true); + private static final Image UNDO_IMAGE = new Image("/org/sleuthkit/autopsy/imagegallery/images/undo.png", 16, 16, true, true, true); //NON-NLS public UndoAction(ImageGalleryController controller) { - super("Undo"); + super(Bundle.UndoAction_displayName()); setGraphic(new ImageView(UNDO_IMAGE)); setAccelerator(new KeyCodeCombination(KeyCode.Z, KeyCodeCombination.CONTROL_DOWN)); setEventHandler(actionEvent -> controller.getUndoManager().undo()); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/Category.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/Category.java index 1567a1b2b4..5717828fe7 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/Category.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/Category.java @@ -24,10 +24,17 @@ import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; import javafx.scene.paint.Color; +import org.openide.util.NbBundle; /** * Enum to represent the six categories in the DHS image categorization scheme. */ +@NbBundle.Messages({"Category.one=CAT-1: Child Exploitation (Illegal)", + "Category.two=CAT-2: Child Exploitation (Non-Illegal/Age Difficult)", + "Category.three=CAT-3: CGI/Animation (Child Exploitive)", + "Category.four=CAT-4: Exemplar/Comparison (Internal Use Only)", + "Category.five=CAT-5: Non-pertinent", + "Category.zero=CAT-0: Uncategorized"}) public enum Category { /* @@ -35,12 +42,12 @@ public enum Category { * preserves the fact that lower category numbers are first/most sever, * except 0 which is last */ - ONE(Color.RED, 1, "CAT-1: Child Exploitation (Illegal)"), - TWO(Color.ORANGE, 2, "CAT-2: Child Exploitation (Non-Illegal/Age Difficult)"), - THREE(Color.YELLOW, 3, "CAT-3: CGI/Animation (Child Exploitive)"), - FOUR(Color.BISQUE, 4, "CAT-4: Exemplar/Comparison (Internal Use Only)"), - FIVE(Color.GREEN, 5, "CAT-5: Non-pertinent"), - ZERO(Color.LIGHTGREY, 0, "CAT-0: Uncategorized"); + ONE(Color.RED, 1, Bundle.Category_one()), + TWO(Color.ORANGE, 2, Bundle.Category_two()), + THREE(Color.YELLOW, 3, Bundle.Category_three()), + FOUR(Color.BISQUE, 4, Bundle.Category_four()), + FIVE(Color.GREEN, 5, Bundle.Category_five()), + ZERO(Color.LIGHTGREY, 0, Bundle.Category_zero()); public static ImmutableList getNonZeroCategories() { return nonZeroCategories; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/CategoryManager.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/CategoryManager.java index d2018d422c..464c2492b0 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/CategoryManager.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/CategoryManager.java @@ -68,8 +68,8 @@ public class CategoryManager { * Used to distribute {@link CategoryChangeEvent}s */ private final EventBus categoryEventBus = new AsyncEventBus(Executors.newSingleThreadExecutor( - new BasicThreadFactory.Builder().namingPattern("Category Event Bus").uncaughtExceptionHandler((Thread t, Throwable e) -> { - LOGGER.log(Level.SEVERE, "Uncaught exception in category event bus handler", e); + new BasicThreadFactory.Builder().namingPattern("Category Event Bus").uncaughtExceptionHandler((Thread t, Throwable e) -> { //NON-NLS + LOGGER.log(Level.SEVERE, "Uncaught exception in category event bus handler", e); //NON-NLS }).build() )); @@ -176,7 +176,7 @@ public class CategoryManager { longAdder.add(db.getCategoryCount(cat)); longAdder.increment(); } catch (IllegalStateException ex) { - LOGGER.log(Level.WARNING, "Case closed while getting files"); + LOGGER.log(Level.WARNING, "Case closed while getting files"); //NON-NLS } return longAdder; } @@ -210,8 +210,8 @@ public class CategoryManager { try { categoryEventBus.unregister(listener); } catch (IllegalArgumentException e) { - if (e.getMessage().contains("missing event subscriber for an annotated method. Is " + listener + " registered?")) { - LOGGER.log(Level.WARNING, "Attempted to unregister {0} for category change events, but it was not registered.", listener.toString()); + if (e.getMessage().contains("missing event subscriber for an annotated method. Is " + listener + " registered?")) { //NON-NLS + LOGGER.log(Level.WARNING, "Attempted to unregister {0} for category change events, but it was not registered.", listener.toString()); //NON-NLS } else { throw e; } @@ -254,12 +254,12 @@ public class CategoryManager { try { tagsManager.deleteContentTag(ct); } catch (TskCoreException tskException) { - LOGGER.log(Level.SEVERE, "Failed to delete content tag. Unable to maintain categories in a consistent state.", tskException); + LOGGER.log(Level.SEVERE, "Failed to delete content tag. Unable to maintain categories in a consistent state.", tskException); //NON-NLS } } } } catch (TskCoreException tskException) { - LOGGER.log(Level.SEVERE, "Failed to get content tags for content. Unable to maintain category in a consistent state.", tskException); + LOGGER.log(Level.SEVERE, "Failed to get content tags for content. Unable to maintain category in a consistent state.", tskException); //NON-NLS } Category newCat = CategoryManager.categoryFromTagName(addedTag.getName()); if (newCat != Category.ZERO) { diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableAttribute.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableAttribute.java index eb3a7ed64d..8222c1effe 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableAttribute.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableAttribute.java @@ -27,6 +27,7 @@ import javafx.beans.property.ReadOnlyStringWrapper; import javafx.beans.property.StringProperty; import javafx.scene.image.Image; import org.apache.commons.lang3.StringUtils; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.datamodel.ContentUtils; import org.sleuthkit.datamodel.TagName; @@ -37,22 +38,37 @@ import org.sleuthkit.datamodel.TagName; * TODO: Review and refactor DrawableAttribute related code with an eye to usage * of type paramaters and multivalued attributes */ +@NbBundle.Messages({"DrawableAttribute.md5hash=MD5 Hash", + "DrawableAttribute.name=Name", + "DrawableAttribute.analyzed=Analyzed", + "DrawableAttribute.category=Category", + "DrawableAttribute.tags=Tags", + "DrawableAttribute.path=Path", + "DrawableAttribute.createdTime=Created Time", + "DrawableAttribute.modifiedTime=Modified Time", + "DrawableAttribute.cameraMake=Camera Make", + "DrawableAttribute.cameraModel=Camera Model", + "DrawableAttribute.hashSet=Hashset", + "DrawableAttribute.intObjID=Internal Object ID", + "DrawableAttribute.width=Width", + "DrawableAttribute.height=Height", + "DrawableAttribute.mimeType=MIME type"}) public class DrawableAttribute> { public final static DrawableAttribute MD5_HASH = - new DrawableAttribute<>(AttributeName.MD5_HASH, "MD5 Hash", + new DrawableAttribute<>(AttributeName.MD5_HASH, Bundle.DrawableAttribute_md5hash(), false, - "icon-hashtag.png", + "icon-hashtag.png", // NON-NLS f -> Collections.singleton(f.getMd5Hash())); public final static DrawableAttribute NAME = - new DrawableAttribute<>(AttributeName.NAME, "Name", + new DrawableAttribute<>(AttributeName.NAME, Bundle.DrawableAttribute_name(), true, - "folder-rename.png", + "folder-rename.png", //NON-NLS f -> Collections.singleton(f.getName())); public final static DrawableAttribute ANALYZED = - new DrawableAttribute<>(AttributeName.ANALYZED, "Analyzed", + new DrawableAttribute<>(AttributeName.ANALYZED, Bundle.DrawableAttribute_analyzed(), true, "", f -> Collections.singleton(f.isAnalyzed())); @@ -66,75 +82,75 @@ public class DrawableAttribute> { * advantage. move categories into DrawableDB? */ public final static DrawableAttribute CATEGORY = - new DrawableAttribute<>(AttributeName.CATEGORY, "Category", + new DrawableAttribute<>(AttributeName.CATEGORY, Bundle.DrawableAttribute_category(), false, - "category-icon.png", + "category-icon.png", //NON-NLS f -> Collections.singleton(f.getCategory())); public final static DrawableAttribute TAGS = - new DrawableAttribute<>(AttributeName.TAGS, "Tags", + new DrawableAttribute<>(AttributeName.TAGS, Bundle.DrawableAttribute_tags(), false, - "tag_red.png", + "tag_red.png", //NON-NLS DrawableFile::getTagNames); public final static DrawableAttribute PATH = - new DrawableAttribute<>(AttributeName.PATH, "Path", + new DrawableAttribute<>(AttributeName.PATH, Bundle.DrawableAttribute_path(), true, - "folder_picture.png", + "folder_picture.png", //NON-NLS f -> Collections.singleton(f.getDrawablePath())); public final static DrawableAttribute CREATED_TIME = - new DrawableAttribute<>(AttributeName.CREATED_TIME, "Created Time", + new DrawableAttribute<>(AttributeName.CREATED_TIME, Bundle.DrawableAttribute_createdTime(), true, - "clock--plus.png", + "clock--plus.png", //NON-NLS f -> Collections.singleton(ContentUtils.getStringTime(f.getCrtime(), f))); public final static DrawableAttribute MODIFIED_TIME = - new DrawableAttribute<>(AttributeName.MODIFIED_TIME, "Modified Time", + new DrawableAttribute<>(AttributeName.MODIFIED_TIME, Bundle.DrawableAttribute_modifiedTime(), true, - "clock--pencil.png", + "clock--pencil.png", //NON-NLS f -> Collections.singleton(ContentUtils.getStringTime(f.getMtime(), f))); public final static DrawableAttribute MAKE = - new DrawableAttribute<>(AttributeName.MAKE, "Camera Make", + new DrawableAttribute<>(AttributeName.MAKE, Bundle.DrawableAttribute_cameraMake(), true, - "camera.png", + "camera.png", //NON-NLS f -> Collections.singleton(f.getMake())); public final static DrawableAttribute MODEL = - new DrawableAttribute<>(AttributeName.MODEL, "Camera Model", + new DrawableAttribute<>(AttributeName.MODEL, Bundle.DrawableAttribute_cameraModel(), true, - "camera.png", + "camera.png", //NON-NLS f -> Collections.singleton(f.getModel())); public final static DrawableAttribute HASHSET = - new DrawableAttribute<>(AttributeName.HASHSET, "Hashset", + new DrawableAttribute<>(AttributeName.HASHSET, Bundle.DrawableAttribute_hashSet(), true, - "hashset_hits.png", + "hashset_hits.png", //NON-NLS DrawableFile::getHashSetNamesUnchecked); public final static DrawableAttribute OBJ_ID = - new DrawableAttribute<>(AttributeName.OBJ_ID, "Internal Object ID", + new DrawableAttribute<>(AttributeName.OBJ_ID, Bundle.DrawableAttribute_intObjID(), true, "", f -> Collections.singleton(f.getId())); public final static DrawableAttribute WIDTH = - new DrawableAttribute<>(AttributeName.WIDTH, "Width", + new DrawableAttribute<>(AttributeName.WIDTH, Bundle.DrawableAttribute_width(), false, - "arrow-resize.png", + "arrow-resize.png", //NON-NLS f -> Collections.singleton(f.getWidth())); public final static DrawableAttribute HEIGHT = - new DrawableAttribute<>(AttributeName.HEIGHT, "Height", + new DrawableAttribute<>(AttributeName.HEIGHT, Bundle.DrawableAttribute_height(), false, - "arrow-resize-090.png", + "arrow-resize-090.png", //NON-NLS f -> Collections.singleton(f.getHeight())); public final static DrawableAttribute MIME_TYPE = - new DrawableAttribute<>(AttributeName.MIME_TYPE, "MIME type", + new DrawableAttribute<>(AttributeName.MIME_TYPE, Bundle.DrawableAttribute_mimeType(), false, - "mime_types.png", + "mime_types.png", //NON-NLS f -> Collections.singleton(f.getMIMEType())); final private static List< DrawableAttribute> groupables = @@ -170,7 +186,7 @@ public class DrawableAttribute> { * time they are needed */ if (null == icon && StringUtils.isNotBlank(imageName)) { - this.icon = new Image("org/sleuthkit/autopsy/imagegallery/images/" + imageName, true); + this.icon = new Image("org/sleuthkit/autopsy/imagegallery/images/" + imageName, true); //NON-NLS } return icon; } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableDB.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableDB.java index 265f5ebaa3..034fbe3b03 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableDB.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableDB.java @@ -78,11 +78,11 @@ public final class DrawableDB { private static final org.sleuthkit.autopsy.coreutils.Logger LOGGER = Logger.getLogger(DrawableDB.class.getName()); //column name constants////////////////////// - private static final String ANALYZED = "analyzed"; + private static final String ANALYZED = "analyzed"; //NON-NLS - private static final String OBJ_ID = "obj_id"; + private static final String OBJ_ID = "obj_id"; //NON-NLS - private static final String HASH_SET_NAME = "hash_set_name"; + private static final String HASH_SET_NAME = "hash_set_name"; //NON-NLS private final PreparedStatement insertHashSetStmt; @@ -141,7 +141,7 @@ public final class DrawableDB { try { Class.forName("org.sqlite.JDBC"); } catch (ClassNotFoundException ex) { - LOGGER.log(Level.SEVERE, "Failed to load sqlite JDBC driver", ex); + LOGGER.log(Level.SEVERE, "Failed to load sqlite JDBC driver", ex); //NON-NLS } } private final SleuthkitCase tskCase; @@ -202,33 +202,33 @@ public final class DrawableDB { Files.createDirectories(dbPath.getParent()); if (initializeDBSchema()) { updateFileStmt = prepareStatement( - "INSERT OR REPLACE INTO drawable_files (obj_id , path, name, created_time, modified_time, make, model, analyzed) " - + "VALUES (?,?,?,?,?,?,?,?)"); + "INSERT OR REPLACE INTO drawable_files (obj_id , path, name, created_time, modified_time, make, model, analyzed) " //NON-NLS + + "VALUES (?,?,?,?,?,?,?,?)"); //NON-NLS insertFileStmt = prepareStatement( - "INSERT OR IGNORE INTO drawable_files (obj_id , path, name, created_time, modified_time, make, model, analyzed) " - + "VALUES (?,?,?,?,?,?,?,?)"); + "INSERT OR IGNORE INTO drawable_files (obj_id , path, name, created_time, modified_time, make, model, analyzed) " //NON-NLS + + "VALUES (?,?,?,?,?,?,?,?)"); //NON-NLS - removeFileStmt = prepareStatement("DELETE FROM drawable_files WHERE obj_id = ?"); + removeFileStmt = prepareStatement("DELETE FROM drawable_files WHERE obj_id = ?"); //NON-NLS - pathGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE path = ? ", DrawableAttribute.PATH); - nameGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE name = ? ", DrawableAttribute.NAME); - created_timeGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE created_time = ? ", DrawableAttribute.CREATED_TIME); - modified_timeGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE modified_time = ? ", DrawableAttribute.MODIFIED_TIME); - makeGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE make = ? ", DrawableAttribute.MAKE); - modelGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE model = ? ", DrawableAttribute.MODEL); - analyzedGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE analyzed = ?", DrawableAttribute.ANALYZED); - hashSetGroupStmt = prepareStatement("SELECT drawable_files.obj_id AS obj_id, analyzed FROM drawable_files , hash_sets , hash_set_hits WHERE drawable_files.obj_id = hash_set_hits.obj_id AND hash_sets.hash_set_id = hash_set_hits.hash_set_id AND hash_sets.hash_set_name = ?", DrawableAttribute.HASHSET); + pathGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE path = ? ", DrawableAttribute.PATH); //NON-NLS + nameGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE name = ? ", DrawableAttribute.NAME); //NON-NLS + created_timeGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE created_time = ? ", DrawableAttribute.CREATED_TIME); //NON-NLS + modified_timeGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE modified_time = ? ", DrawableAttribute.MODIFIED_TIME); //NON-NLS + makeGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE make = ? ", DrawableAttribute.MAKE); //NON-NLS + modelGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE model = ? ", DrawableAttribute.MODEL); //NON-NLS + analyzedGroupStmt = prepareStatement("SELECT obj_id , analyzed FROM drawable_files WHERE analyzed = ?", DrawableAttribute.ANALYZED); //NON-NLS + hashSetGroupStmt = prepareStatement("SELECT drawable_files.obj_id AS obj_id, analyzed FROM drawable_files , hash_sets , hash_set_hits WHERE drawable_files.obj_id = hash_set_hits.obj_id AND hash_sets.hash_set_id = hash_set_hits.hash_set_id AND hash_sets.hash_set_name = ?", DrawableAttribute.HASHSET); //NON-NLS - updateGroupStmt = prepareStatement("insert or replace into groups (seen, value, attribute) values( ?, ? , ?)"); - insertGroupStmt = prepareStatement("insert or ignore into groups (value, attribute) values (?,?)"); + updateGroupStmt = prepareStatement("insert or replace into groups (seen, value, attribute) values( ?, ? , ?)"); //NON-NLS + insertGroupStmt = prepareStatement("insert or ignore into groups (value, attribute) values (?,?)"); //NON-NLS - groupSeenQueryStmt = prepareStatement("SELECT seen FROM groups WHERE value = ? AND attribute = ?"); + groupSeenQueryStmt = prepareStatement("SELECT seen FROM groups WHERE value = ? AND attribute = ?"); //NON-NLS - selectHashSetNamesStmt = prepareStatement("SELECT DISTINCT hash_set_name FROM hash_sets"); - insertHashSetStmt = prepareStatement("INSERT OR IGNORE INTO hash_sets (hash_set_name) VALUES (?)"); - selectHashSetStmt = prepareStatement("SELECT hash_set_id FROM hash_sets WHERE hash_set_name = ?"); + selectHashSetNamesStmt = prepareStatement("SELECT DISTINCT hash_set_name FROM hash_sets"); //NON-NLS + insertHashSetStmt = prepareStatement("INSERT OR IGNORE INTO hash_sets (hash_set_name) VALUES (?)"); //NON-NLS + selectHashSetStmt = prepareStatement("SELECT hash_set_id FROM hash_sets WHERE hash_set_name = ?"); //NON-NLS - insertHashHitStmt = prepareStatement("INSERT OR IGNORE INTO hash_set_hits (hash_set_id, obj_id) VALUES (?,?)"); + insertHashHitStmt = prepareStatement("INSERT OR IGNORE INTO hash_set_hits (hash_set_id, obj_id) VALUES (?,?)"); //NON-NLS for (Category cat : Category.values()) { insertGroup(cat.getDisplayName(), DrawableAttribute.CATEGORY); @@ -290,12 +290,12 @@ public final class DrawableDB { public static DrawableDB getDrawableDB(Path dbPath, ImageGalleryController controller) { try { - return new DrawableDB(dbPath.resolve("drawable.db"), controller); + return new DrawableDB(dbPath.resolve("drawable.db"), controller); //NON-NLS } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "sql error creating database connection", ex); + LOGGER.log(Level.SEVERE, "sql error creating database connection", ex); //NON-NLS return null; } catch (ExceptionInInitializerError | IOException ex) { - LOGGER.log(Level.SEVERE, "error creating database connection", ex); + LOGGER.log(Level.SEVERE, "error creating database connection", ex); //NON-NLS return null; } } @@ -305,33 +305,33 @@ public final class DrawableDB { //this should match Sleuthkit db setupt try (Statement statement = con.createStatement()) { //reduce i/o operations, we have no OS crash recovery anyway - statement.execute("PRAGMA synchronous = OFF;"); + statement.execute("PRAGMA synchronous = OFF;"); //NON-NLS //allow to query while in transaction - no need read locks - statement.execute("PRAGMA read_uncommitted = True;"); + statement.execute("PRAGMA read_uncommitted = True;"); //NON-NLS //TODO: do we need this? - statement.execute("PRAGMA foreign_keys = ON"); + statement.execute("PRAGMA foreign_keys = ON"); //NON-NLS //TODO: test this - statement.execute("PRAGMA journal_mode = MEMORY"); + statement.execute("PRAGMA journal_mode = MEMORY"); //NON-NLS // //we don't use this feature, so turn it off for minimal speed up on queries //this is deprecated and not recomended - statement.execute("PRAGMA count_changes = OFF;"); + statement.execute("PRAGMA count_changes = OFF;"); //NON-NLS //this made a big difference to query speed - statement.execute("PRAGMA temp_store = MEMORY"); + statement.execute("PRAGMA temp_store = MEMORY"); //NON-NLS //this made a modest improvement in query speeds - statement.execute("PRAGMA cache_size = 50000"); + statement.execute("PRAGMA cache_size = 50000"); //NON-NLS //we never delete anything so... - statement.execute("PRAGMA auto_vacuum = 0"); + statement.execute("PRAGMA auto_vacuum = 0"); //NON-NLS } try { - LOGGER.log(Level.INFO, String.format("sqlite-jdbc version %s loaded in %s mode", + LOGGER.log(Level.INFO, String.format("sqlite-jdbc version %s loaded in %s mode", //NON-NLS SQLiteJDBCLoader.getVersion(), SQLiteJDBCLoader.isNativeMode() - ? "native" : "pure-java")); + ? "native" : "pure-java")); //NON-NLS } catch (Exception exception) { - LOGGER.log(Level.WARNING, "exception while checking sqlite-jdbc version and mode", exception); + LOGGER.log(Level.WARNING, "exception while checking sqlite-jdbc version and mode", exception); //NON-NLS } } @@ -350,92 +350,92 @@ public final class DrawableDB { setPragmas(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem accessing database", ex); + LOGGER.log(Level.SEVERE, "problem accessing database", ex); //NON-NLS return false; } try (Statement stmt = con.createStatement()) { - String sql = "CREATE TABLE if not exists drawable_files " - + "( obj_id INTEGER PRIMARY KEY, " - + " path VARCHAR(255), " - + " name VARCHAR(255), " - + " created_time integer, " - + " modified_time integer, " - + " make VARCHAR(255), " - + " model VARCHAR(255), " - + " analyzed integer DEFAULT 0)"; + String sql = "CREATE TABLE if not exists drawable_files " //NON-NLS + + "( obj_id INTEGER PRIMARY KEY, " //NON-NLS + + " path VARCHAR(255), " //NON-NLS + + " name VARCHAR(255), " //NON-NLS + + " created_time integer, " //NON-NLS + + " modified_time integer, " //NON-NLS + + " make VARCHAR(255), " //NON-NLS + + " model VARCHAR(255), " //NON-NLS + + " analyzed integer DEFAULT 0)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem creating drawable_files table", ex); + LOGGER.log(Level.SEVERE, "problem creating drawable_files table", ex); //NON-NLS return false; } try (Statement stmt = con.createStatement()) { - String sql = "CREATE TABLE if not exists groups " - + "(group_id INTEGER PRIMARY KEY, " - + " value VARCHAR(255) not null, " - + " attribute VARCHAR(255) not null, " - + " seen integer DEFAULT 0, " - + " UNIQUE(value, attribute) )"; + String sql = "CREATE TABLE if not exists groups " //NON-NLS + + "(group_id INTEGER PRIMARY KEY, " //NON-NLS + + " value VARCHAR(255) not null, " //NON-NLS + + " attribute VARCHAR(255) not null, " //NON-NLS + + " seen integer DEFAULT 0, " //NON-NLS + + " UNIQUE(value, attribute) )"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem creating groups table", ex); + LOGGER.log(Level.SEVERE, "problem creating groups table", ex); //NON-NLS return false; } try (Statement stmt = con.createStatement()) { - String sql = "CREATE TABLE if not exists hash_sets " - + "( hash_set_id INTEGER primary key," - + " hash_set_name VARCHAR(255) UNIQUE NOT NULL)"; + String sql = "CREATE TABLE if not exists hash_sets " //NON-NLS + + "( hash_set_id INTEGER primary key," //NON-NLS + + " hash_set_name VARCHAR(255) UNIQUE NOT NULL)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem creating hash_sets table", ex); + LOGGER.log(Level.SEVERE, "problem creating hash_sets table", ex); //NON-NLS return false; } try (Statement stmt = con.createStatement()) { - String sql = "CREATE TABLE if not exists hash_set_hits " - + "(hash_set_id INTEGER REFERENCES hash_sets(hash_set_id) not null, " - + " obj_id INTEGER REFERENCES drawable_files(obj_id) not null, " - + " PRIMARY KEY (hash_set_id, obj_id))"; + String sql = "CREATE TABLE if not exists hash_set_hits " //NON-NLS + + "(hash_set_id INTEGER REFERENCES hash_sets(hash_set_id) not null, " //NON-NLS + + " obj_id INTEGER REFERENCES drawable_files(obj_id) not null, " //NON-NLS + + " PRIMARY KEY (hash_set_id, obj_id))"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "problem creating hash_set_hits table", ex); + LOGGER.log(Level.SEVERE, "problem creating hash_set_hits table", ex); //NON-NLS return false; } try (Statement stmt = con.createStatement()) { - String sql = "CREATE INDEX if not exists path_idx ON drawable_files(path)"; + String sql = "CREATE INDEX if not exists path_idx ON drawable_files(path)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem creating path_idx", ex); + LOGGER.log(Level.WARNING, "problem creating path_idx", ex); //NON-NLS } try (Statement stmt = con.createStatement()) { - String sql = "CREATE INDEX if not exists name_idx ON drawable_files(name)"; + String sql = "CREATE INDEX if not exists name_idx ON drawable_files(name)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem creating name_idx", ex); + LOGGER.log(Level.WARNING, "problem creating name_idx", ex); //NON-NLS } try (Statement stmt = con.createStatement()) { - String sql = "CREATE INDEX if not exists make_idx ON drawable_files(make)"; + String sql = "CREATE INDEX if not exists make_idx ON drawable_files(make)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem creating make_idx", ex); + LOGGER.log(Level.WARNING, "problem creating make_idx", ex); //NON-NLS } try (Statement stmt = con.createStatement()) { - String sql = "CREATE INDEX if not exists model_idx ON drawable_files(model)"; + String sql = "CREATE INDEX if not exists model_idx ON drawable_files(model)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem creating model_idx", ex); + LOGGER.log(Level.WARNING, "problem creating model_idx", ex); //NON-NLS } try (Statement stmt = con.createStatement()) { - String sql = "CREATE INDEX if not exists analyzed_idx ON drawable_files(analyzed)"; + String sql = "CREATE INDEX if not exists analyzed_idx ON drawable_files(analyzed)"; //NON-NLS stmt.execute(sql); } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem creating analyzed_idx", ex); + LOGGER.log(Level.WARNING, "problem creating analyzed_idx", ex); //NON-NLS } return true; @@ -456,7 +456,7 @@ public final class DrawableDB { closeStatements(); con.close(); } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "Failed to close connection to drawable.db", ex); + LOGGER.log(Level.WARNING, "Failed to close connection to drawable.db", ex); //NON-NLS } } con = null; @@ -465,10 +465,10 @@ public final class DrawableDB { public void openDBCon() { try { if (con == null || con.isClosed()) { - con = DriverManager.getConnection("jdbc:sqlite:" + dbPath.toString()); + con = DriverManager.getConnection("jdbc:sqlite:" + dbPath.toString()); //NON-NLS } } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "Failed to open connection to drawable.db", ex); + LOGGER.log(Level.WARNING, "Failed to open connection to drawable.db", ex); //NON-NLS } } @@ -519,7 +519,7 @@ public final class DrawableDB { names.add(rs.getString(HASH_SET_NAME)); } } catch (SQLException sQLException) { - LOGGER.log(Level.WARNING, "failed to get hash set names", sQLException); + LOGGER.log(Level.WARNING, "failed to get hash set names", sQLException); //NON-NLS } finally { dbReadUnlock(); } @@ -534,11 +534,11 @@ public final class DrawableDB { groupSeenQueryStmt.setString(2, groupKey.getAttribute().attrName.toString()); try (ResultSet rs = groupSeenQueryStmt.executeQuery()) { while (rs.next()) { - return rs.getBoolean("seen"); + return rs.getBoolean("seen"); //NON-NLS } } } catch (SQLException ex) { - String msg = String.format("Failed to get is group seen for group key %s", groupKey.getValueDisplayName()); + String msg = String.format("Failed to get is group seen for group key %s", groupKey.getValueDisplayName()); //NON-NLS LOGGER.log(Level.WARNING, msg, ex); } finally { dbReadUnlock(); @@ -556,7 +556,7 @@ public final class DrawableDB { updateGroupStmt.setString(3, gk.getAttribute().attrName.toString()); updateGroupStmt.execute(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error marking group as seen", ex); + LOGGER.log(Level.SEVERE, "Error marking group as seen", ex); //NON-NLS } finally { dbWriteUnlock(); } @@ -635,7 +635,7 @@ public final class DrawableDB { selectHashSetStmt.setString(1, name); try (ResultSet rs = selectHashSetStmt.executeQuery()) { while (rs.next()) { - int hashsetID = rs.getInt("hash_set_id"); + int hashsetID = rs.getInt("hash_set_id"); //NON-NLS //"insert or ignore into hash_set_hits (hash_set_id, obj_id) values (?,?)"; insertHashHitStmt.setInt(1, hashsetID); insertHashHitStmt.setLong(2, f.getId()); @@ -645,7 +645,7 @@ public final class DrawableDB { } } } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "failed to insert/update hash hits for file" + f.getContentPathSafe(), ex); + LOGGER.log(Level.SEVERE, "failed to insert/update hash hits for file" + f.getContentPathSafe(), ex); //NON-NLS } //and update all groups this file is in @@ -667,7 +667,7 @@ public final class DrawableDB { * closed during processing, which doesn't need to be reported here. */ if (Case.isCaseOpen()) { - LOGGER.log(Level.SEVERE, "failed to insert/update file" + f.getContentPathSafe(), ex); + LOGGER.log(Level.SEVERE, "failed to insert/update file" + f.getContentPathSafe(), ex); //NON-NLS } } finally { @@ -693,12 +693,12 @@ public final class DrawableDB { public Boolean isFileAnalyzed(long fileId) { dbReadLock(); try (Statement stmt = con.createStatement(); - ResultSet analyzedQuery = stmt.executeQuery("SELECT analyzed FROM drawable_files WHERE obj_id = " + fileId)) { + ResultSet analyzedQuery = stmt.executeQuery("SELECT analyzed FROM drawable_files WHERE obj_id = " + fileId)) { //NON-NLS while (analyzedQuery.next()) { return analyzedQuery.getBoolean(ANALYZED); } } catch (SQLException ex) { - String msg = String.format("Failed to determine if file %s is finalized", String.valueOf(fileId)); + String msg = String.format("Failed to determine if file %s is finalized", String.valueOf(fileId)); //NON-NLS LOGGER.log(Level.WARNING, msg, ex); } finally { dbReadUnlock(); @@ -712,12 +712,12 @@ public final class DrawableDB { dbReadLock(); try (Statement stmt = con.createStatement(); //Can't make this a preprared statement because of the IN ( ... ) - ResultSet analyzedQuery = stmt.executeQuery("SELECT COUNT(analyzed) AS analyzed FROM drawable_files WHERE analyzed = 1 AND obj_id IN (" + StringUtils.join(fileIds, ", ") + ")")) { + ResultSet analyzedQuery = stmt.executeQuery("SELECT COUNT(analyzed) AS analyzed FROM drawable_files WHERE analyzed = 1 AND obj_id IN (" + StringUtils.join(fileIds, ", ") + ")")) { //NON-NLS while (analyzedQuery.next()) { return analyzedQuery.getInt(ANALYZED) == fileIds.size(); } } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem counting analyzed files: ", ex); + LOGGER.log(Level.WARNING, "problem counting analyzed files: ", ex); //NON-NLS } finally { dbReadUnlock(); } @@ -734,7 +734,7 @@ public final class DrawableDB { // In testing, this method appears to be a lot faster than doing one large select statement for (Long fileID : fileIDsInGroup) { Statement stmt = con.createStatement(); - ResultSet analyzedQuery = stmt.executeQuery("SELECT analyzed FROM drawable_files WHERE obj_id = " + fileID); + ResultSet analyzedQuery = stmt.executeQuery("SELECT analyzed FROM drawable_files WHERE obj_id = " + fileID); //NON-NLS while (analyzedQuery.next()) { if (analyzedQuery.getInt(ANALYZED) == 0) { return false; @@ -744,10 +744,10 @@ public final class DrawableDB { } } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem counting analyzed files: ", ex); + LOGGER.log(Level.WARNING, "problem counting analyzed files: ", ex); //NON-NLS } } catch (TskCoreException tskCoreException) { - LOGGER.log(Level.WARNING, "problem counting analyzed files: ", tskCoreException); + LOGGER.log(Level.WARNING, "problem counting analyzed files: ", tskCoreException); //NON-NLS } finally { dbReadUnlock(); } @@ -773,7 +773,7 @@ public final class DrawableDB { dbReadLock(); try { statement = con.createStatement(); - rs = statement.executeQuery("SELECT obj_id FROM drawable_files WHERE " + sqlWhereClause); + rs = statement.executeQuery("SELECT obj_id FROM drawable_files WHERE " + sqlWhereClause); //NON-NLS while (rs.next()) { ret.add(rs.getLong(1)); } @@ -784,14 +784,14 @@ public final class DrawableDB { try { rs.close(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error closing result set after executing findAllFileIdsWhere", ex); + LOGGER.log(Level.SEVERE, "Error closing result set after executing findAllFileIdsWhere", ex); //NON-NLS } } if (statement != null) { try { statement.close(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error closing statement after executing findAllFileIdsWhere", ex); + LOGGER.log(Level.SEVERE, "Error closing statement after executing findAllFileIdsWhere", ex); //NON-NLS } } dbReadUnlock(); @@ -825,14 +825,14 @@ public final class DrawableDB { try { rs.close(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error closing result set after executing countFilesWhere", ex); + LOGGER.log(Level.SEVERE, "Error closing result set after executing countFilesWhere", ex); //NON-NLS } } if (statement != null) { try { statement.close(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error closing statement after executing countFilesWhere", ex); + LOGGER.log(Level.SEVERE, "Error closing statement after executing countFilesWhere", ex); //NON-NLS } } dbReadUnlock(); @@ -862,14 +862,14 @@ public final class DrawableDB { try { rs.close(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error closing result set after executing countFiles", ex); + LOGGER.log(Level.SEVERE, "Error closing result set after executing countFiles", ex); //NON-NLS } } if (statement != null) { try { statement.close(); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error closing statement after executing countFiles", ex); + LOGGER.log(Level.SEVERE, "Error closing statement after executing countFiles", ex); //NON-NLS } } dbReadUnlock(); @@ -900,15 +900,15 @@ public final class DrawableDB { default: dbReadLock(); //TODO: convert this to prepared statement - StringBuilder query = new StringBuilder("SELECT " + groupBy.attrName.toString() + ", COUNT(*) FROM drawable_files GROUP BY " + groupBy.attrName.toString()); + StringBuilder query = new StringBuilder("SELECT " + groupBy.attrName.toString() + ", COUNT(*) FROM drawable_files GROUP BY " + groupBy.attrName.toString()); //NON-NLS String orderByClause = ""; switch (sortBy) { case GROUP_BY_VALUE: - orderByClause = " ORDER BY " + groupBy.attrName.toString(); + orderByClause = " ORDER BY " + groupBy.attrName.toString(); //NON-NLS break; case FILE_COUNT: - orderByClause = " ORDER BY COUNT(*)"; + orderByClause = " ORDER BY COUNT(*)"; //NON-NLS break; case NONE: // case PRIORITY: @@ -922,10 +922,10 @@ public final class DrawableDB { switch (sortOrder) { case DESCENDING: - sortOrderClause = " DESC"; + sortOrderClause = " DESC"; //NON-NLS break; case ASCENDING: - sortOrderClause = " ASC"; + sortOrderClause = " ASC"; //NON-NLS break; default: orderByClause = ""; @@ -947,7 +947,7 @@ public final class DrawableDB { vals.add(value); } } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "Unable to get values for attribute", ex); + LOGGER.log(Level.WARNING, "Unable to get values for attribute", ex); //NON-NLS } finally { dbReadUnlock(); } @@ -968,7 +968,7 @@ public final class DrawableDB { } catch (SQLException sQLException) { // Don't need to report it if the case was closed if (Case.isCaseOpen()) { - LOGGER.log(Level.SEVERE, "Unable to insert group", sQLException); + LOGGER.log(Level.SEVERE, "Unable to insert group", sQLException); //NON-NLS } } finally { dbWriteUnlock(); @@ -989,7 +989,7 @@ public final class DrawableDB { AbstractFile f = tskCase.getAbstractFileById(id); return DrawableFile.create(f, analyzed, isVideoFile(f)); } catch (IllegalStateException ex) { - LOGGER.log(Level.SEVERE, "there is no case open; failed to load file with id: " + id, ex); + LOGGER.log(Level.SEVERE, "there is no case open; failed to load file with id: " + id, ex); //NON-NLS return null; } } @@ -1008,7 +1008,7 @@ public final class DrawableDB { return DrawableFile.create(f, areFilesAnalyzed(Collections.singleton(id)), isVideoFile(f)); } catch (IllegalStateException ex) { - LOGGER.log(Level.SEVERE, "there is no case open; failed to load file with id: {0}", id); + LOGGER.log(Level.SEVERE, "there is no case open; failed to load file with id: {0}", id); //NON-NLS return null; } } @@ -1037,7 +1037,7 @@ public final class DrawableDB { } } } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "failed to get file for group:" + groupKey.getAttribute() + " == " + groupKey.getValue(), ex); + LOGGER.log(Level.WARNING, "failed to get file for group:" + groupKey.getAttribute() + " == " + groupKey.getValue(), ex); //NON-NLS } finally { dbReadUnlock(); } @@ -1059,14 +1059,14 @@ public final class DrawableDB { public int countAllFiles() { int result = -1; dbReadLock(); - try (ResultSet rs = con.createStatement().executeQuery("SELECT COUNT(*) AS COUNT FROM drawable_files")) { + try (ResultSet rs = con.createStatement().executeQuery("SELECT COUNT(*) AS COUNT FROM drawable_files")) { //NON-NLS while (rs.next()) { result = rs.getInt("COUNT"); break; } } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "Error accessing SQLite database"); + LOGGER.log(Level.SEVERE, "Error accessing SQLite database"); //NON-NLS } finally { dbReadUnlock(); } @@ -1098,7 +1098,7 @@ public final class DrawableDB { //TODO: delete from hash_set_hits table also... } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "failed to delete row for obj_id = " + id, ex); + LOGGER.log(Level.WARNING, "failed to delete row for obj_id = " + id, ex); //NON-NLS } finally { dbWriteUnlock(); } @@ -1110,7 +1110,7 @@ public final class DrawableDB { public class MultipleTransactionException extends IllegalStateException { - private static final String CANNOT_HAVE_MORE_THAN_ONE_OPEN_TRANSACTIO = "cannot have more than one open transaction"; + private static final String CANNOT_HAVE_MORE_THAN_ONE_OPEN_TRANSACTIO = "cannot have more than one open transaction"; //NON-NLS public MultipleTransactionException() { super(CANNOT_HAVE_MORE_THAN_ONE_OPEN_TRANSACTIO); @@ -1154,12 +1154,12 @@ public final class DrawableDB { dbReadLock(); try { Statement stmt = con.createStatement(); - ResultSet analyzedQuery = stmt.executeQuery("select obj_id from drawable_files"); + ResultSet analyzedQuery = stmt.executeQuery("select obj_id from drawable_files"); //NON-NLS while (analyzedQuery.next()) { addImageFileToList(analyzedQuery.getLong(OBJ_ID)); } } catch (SQLException ex) { - LOGGER.log(Level.WARNING, "problem loading file IDs: ", ex); + LOGGER.log(Level.WARNING, "problem loading file IDs: ", ex); //NON-NLS } finally { dbReadUnlock(); } @@ -1211,9 +1211,9 @@ public final class DrawableDB { .count(); } } catch (IllegalStateException ex) { - LOGGER.log(Level.WARNING, "Case closed while getting files"); + LOGGER.log(Level.WARNING, "Case closed while getting files"); //NON-NLS } catch (TskCoreException ex1) { - LOGGER.log(Level.SEVERE, "Failed to get content tags by tag name.", ex1); + LOGGER.log(Level.SEVERE, "Failed to get content tags by tag name.", ex1); //NON-NLS } return -1; @@ -1248,15 +1248,15 @@ public final class DrawableDB { //count the fileids that are in the given list and don't have a non-zero category assigned to them. String name = - "SELECT COUNT(obj_id) FROM tsk_files where obj_id IN " + fileIdsList - + " AND obj_id NOT IN (SELECT obj_id FROM content_tags WHERE content_tags.tag_name_id IN " + catTagNameIDs + ")"; + "SELECT COUNT(obj_id) FROM tsk_files where obj_id IN " + fileIdsList //NON-NLS + + " AND obj_id NOT IN (SELECT obj_id FROM content_tags WHERE content_tags.tag_name_id IN " + catTagNameIDs + ")"; //NON-NLS try (SleuthkitCase.CaseDbQuery executeQuery = controller.getSleuthKitCase().executeQuery(name); ResultSet resultSet = executeQuery.getResultSet();) { while (resultSet.next()) { - return resultSet.getLong("count(obj_id)"); + return resultSet.getLong("count(obj_id)"); //NON-NLS } } catch (SQLException | TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Error getting category count.", ex); + LOGGER.log(Level.SEVERE, "Error getting category count.", ex); //NON-NLS } return -1; @@ -1291,7 +1291,7 @@ public final class DrawableDB { con.setAutoCommit(false); } catch (SQLException ex) { - LOGGER.log(Level.SEVERE, "failed to set auto-commit to to false", ex); + LOGGER.log(Level.SEVERE, "failed to set auto-commit to to false", ex); //NON-NLS } } @@ -1302,7 +1302,7 @@ public final class DrawableDB { con.rollback(); updatedFiles.clear(); } catch (SQLException ex1) { - LOGGER.log(Level.SEVERE, "Exception while attempting to rollback!!", ex1); + LOGGER.log(Level.SEVERE, "Exception while attempting to rollback!!", ex1); //NON-NLS } finally { close(); } @@ -1324,9 +1324,9 @@ public final class DrawableDB { } } catch (SQLException ex) { if (Case.isCaseOpen()) { - LOGGER.log(Level.SEVERE, "Error commiting drawable.db.", ex); + LOGGER.log(Level.SEVERE, "Error commiting drawable.db.", ex); //NON-NLS } else { - LOGGER.log(Level.WARNING, "Error commiting drawable.db - case is closed."); + LOGGER.log(Level.WARNING, "Error commiting drawable.db - case is closed."); //NON-NLS } rollback(); } @@ -1339,9 +1339,9 @@ public final class DrawableDB { con.setAutoCommit(true); } catch (SQLException ex) { if (Case.isCaseOpen()) { - LOGGER.log(Level.SEVERE, "Error setting auto-commit to true.", ex); + LOGGER.log(Level.SEVERE, "Error setting auto-commit to true.", ex); //NON-NLS } else { - LOGGER.log(Level.SEVERE, "Error setting auto-commit to true - case is closed"); + LOGGER.log(Level.SEVERE, "Error setting auto-commit to true - case is closed"); //NON-NLS } } finally { closed = true; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableFile.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableFile.java index 14fbf4265c..979429b880 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableFile.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableFile.java @@ -186,9 +186,9 @@ public abstract class DrawableFile extends AbstractFile .map(Tag::getName) .collect(Collectors.toSet()); } catch (TskCoreException ex) { - Logger.getAnonymousLogger().log(Level.WARNING, "problem looking up " + DrawableAttribute.TAGS.getDisplayName() + " for " + file.getName(), ex); + Logger.getAnonymousLogger().log(Level.WARNING, "problem looking up " + DrawableAttribute.TAGS.getDisplayName() + " for " + file.getName(), ex); //NON-NLS } catch (IllegalStateException ex) { - Logger.getAnonymousLogger().log(Level.WARNING, "there is no case open; failed to look up " + DrawableAttribute.TAGS.getDisplayName() + " for " + file.getName()); + Logger.getAnonymousLogger().log(Level.WARNING, "there is no case open; failed to look up " + DrawableAttribute.TAGS.getDisplayName() + " for " + file.getName()); //NON-NLS } return Collections.emptySet(); } @@ -223,7 +223,7 @@ public abstract class DrawableFile extends AbstractFile } } } catch (TskCoreException ex) { - Logger.getAnonymousLogger().log(Level.WARNING, "problem looking up {0}/{1}" + " " + " for {2}", new Object[]{artType.getDisplayName(), attrType.getDisplayName(), getName()}); + Logger.getAnonymousLogger().log(Level.WARNING, "problem looking up {0}/{1}" + " " + " for {2}", new Object[]{artType.getDisplayName(), attrType.getDisplayName(), getName()}); //NON-NLS } return ""; } @@ -255,7 +255,7 @@ public abstract class DrawableFile extends AbstractFile .orElse(Category.ZERO) ); } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "problem looking up category for file " + this.getName() + ex.getLocalizedMessage()); + LOGGER.log(Level.WARNING, "problem looking up category for file " + this.getName() + ex.getLocalizedMessage()); //NON-NLS } catch (IllegalStateException ex) { // We get here many times if the case is closed during ingest, so don't print out a ton of warnings. } @@ -333,7 +333,7 @@ public abstract class DrawableFile extends AbstractFile drawablePath = StringUtils.removeEnd(getUniquePath(), getName()); return drawablePath; } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "failed to get drawablePath from {0}", getName()); + LOGGER.log(Level.WARNING, "failed to get drawablePath from {0}", getName()); //NON-NLS return ""; } } @@ -344,7 +344,7 @@ public abstract class DrawableFile extends AbstractFile try { return getHashSetNames(); } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "Failed to get hash set names", ex); + LOGGER.log(Level.WARNING, "Failed to get hash set names", ex); //NON-NLS return Collections.emptySet(); } } @@ -362,7 +362,7 @@ public abstract class DrawableFile extends AbstractFile return this.getUniquePath(); } catch (TskCoreException tskCoreException) { String contentName = this.getName(); - LOGGER.log(Level.SEVERE, "Failed to get unique path for " + contentName, tskCoreException); //NOI18N + LOGGER.log(Level.SEVERE, "Failed to get unique path for " + contentName, tskCoreException); //NOI18N NON-NLS return contentName; } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableTagsManager.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableTagsManager.java index 0d122a6219..cdadb53b94 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableTagsManager.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/DrawableTagsManager.java @@ -28,6 +28,7 @@ import java.util.logging.Level; import java.util.stream.Collectors; import javax.annotation.Nonnull; import org.apache.commons.lang3.concurrent.BasicThreadFactory; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.events.ContentTagAddedEvent; import org.sleuthkit.autopsy.casemodule.events.ContentTagDeletedEvent; import org.sleuthkit.autopsy.casemodule.services.TagsManager; @@ -41,11 +42,12 @@ import org.sleuthkit.datamodel.TskCoreException; * Manages Tags, Tagging, and the relationship between Categories and Tags in * the autopsy Db. delegates some, work to the backing {@link TagsManager}. */ +@NbBundle.Messages({"DrawableTagsManager.followUp=Follow Up"}) public class DrawableTagsManager { private static final Logger LOGGER = Logger.getLogger(DrawableTagsManager.class.getName()); - private static final String FOLLOW_UP = "Follow Up"; + private static final String FOLLOW_UP = Bundle.DrawableTagsManager_followUp(); final private Object autopsyTagsManagerLock = new Object(); private TagsManager autopsyTagsManager; @@ -53,8 +55,8 @@ public class DrawableTagsManager { /** Used to distribute {@link TagsChangeEvent}s */ private final EventBus tagsEventBus = new AsyncEventBus( Executors.newSingleThreadExecutor( - new BasicThreadFactory.Builder().namingPattern("Tags Event Bus").uncaughtExceptionHandler((Thread t, Throwable e) -> { - LOGGER.log(Level.SEVERE, "uncaught exception in event bus handler", e); + new BasicThreadFactory.Builder().namingPattern("Tags Event Bus").uncaughtExceptionHandler((Thread t, Throwable e) -> { //NON-NLS + LOGGER.log(Level.SEVERE, "uncaught exception in event bus handler", e); //NON-NLS }).build() )); @@ -147,7 +149,7 @@ public class DrawableTagsManager { .distinct().sorted() .collect(Collectors.toList()); } catch (TskCoreException | IllegalStateException ex) { - LOGGER.log(Level.WARNING, "couldn't access case", ex); + LOGGER.log(Level.WARNING, "couldn't access case", ex); //NON-NLS } return Collections.emptyList(); } @@ -183,7 +185,7 @@ public class DrawableTagsManager { throw new TskCoreException("tagame exists but wasn't found", ex); } } catch (IllegalStateException ex) { - LOGGER.log(Level.SEVERE, "Case was closed out from underneath", ex); + LOGGER.log(Level.SEVERE, "Case was closed out from underneath", ex); //NON-NLS throw new TskCoreException("Case was closed out from underneath", ex); } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/HashSetManager.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/HashSetManager.java index a04646c310..9b3b3218f1 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/HashSetManager.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/HashSetManager.java @@ -46,7 +46,7 @@ public class HashSetManager { try { return db.getHashSetsForFile(fileID); } catch (TskCoreException ex) { - Logger.getLogger(HashSetManager.class.getName()).log(Level.SEVERE, "Failed to get Hash Sets for file", ex); + Logger.getLogger(HashSetManager.class.getName()).log(Level.SEVERE, "Failed to get Hash Sets for file", ex); //NON-NLS return Collections.emptySet(); } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/ImageFile.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/ImageFile.java index 4249fe3c24..01e5cfd983 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/ImageFile.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/ImageFile.java @@ -46,7 +46,7 @@ public class ImageFile extends DrawableFile { @Override String getMessageTemplate(final Exception exception) { - return "Failed to read image {0}: " + exception.toString(); + return "Failed to read image {0}: " + exception.toString(); //NON-NLS } @Override diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/VideoFile.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/VideoFile.java index 20724ef0bc..1da586f603 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/VideoFile.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/VideoFile.java @@ -29,6 +29,7 @@ import javafx.scene.media.Media; import javafx.scene.media.MediaException; import org.netbeans.api.progress.ProgressHandle; import org.netbeans.api.progress.ProgressHandleFactory; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.ImageUtils; import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.VideoUtils; @@ -39,7 +40,7 @@ public class VideoFile extends DrawableFile { private static final Logger LOGGER = Logger.getLogger(VideoFile.class.getName()); - private static final Image VIDEO_ICON = new Image("org/sleuthkit/autopsy/imagegallery/images/Clapperboard.png"); + private static final Image VIDEO_ICON = new Image("org/sleuthkit/autopsy/imagegallery/images/Clapperboard.png"); //NON-NLS VideoFile(T file, Boolean analyzed) { super(file, analyzed); @@ -53,7 +54,7 @@ public class VideoFile extends DrawableFile { @Override String getMessageTemplate(final Exception exception) { - return "Failed to get image preview for video {0}: " + exception.toString(); + return "Failed to get image preview for video {0}: " + exception.toString(); //NON-NLS } @Override @@ -63,6 +64,7 @@ public class VideoFile extends DrawableFile { private SoftReference mediaRef; + @NbBundle.Messages({"VideoFile.getMedia.progress=writing temporary file to disk"}) public Media getMedia() throws IOException, MediaException { Media media = (mediaRef != null) ? mediaRef.get() : null; @@ -73,7 +75,7 @@ public class VideoFile extends DrawableFile { if (cacheFile.exists() == false || cacheFile.length() < getAbstractFile().getSize()) { Files.createParentDirs(cacheFile); - ProgressHandle progressHandle = ProgressHandleFactory.createHandle("writing temporary file to disk"); + ProgressHandle progressHandle = ProgressHandleFactory.createHandle(Bundle.VideoFile_getMedia_progress()); progressHandle.start(100); ContentUtils.writeToFile(this.getAbstractFile(), cacheFile, progressHandle, null, true); progressHandle.finish(); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/DrawableGroup.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/DrawableGroup.java index f3020830a9..1b8b7d72c8 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/DrawableGroup.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/DrawableGroup.java @@ -126,7 +126,7 @@ public class DrawableGroup implements Comparable { .filter(Boolean::booleanValue) .count()); } catch (IllegalStateException | NullPointerException ex) { - LOGGER.log(Level.WARNING, "could not access case during getFilesWithHashSetHitsCount()"); + LOGGER.log(Level.WARNING, "could not access case during getFilesWithHashSetHitsCount()"); //NON-NLS } } @@ -145,7 +145,7 @@ public class DrawableGroup implements Comparable { uncatCount.set(ImageGalleryController.getDefault().getDatabase().getCategoryCount(Category.ZERO, fileIDs)); } catch (IllegalStateException | NullPointerException ex) { - LOGGER.log(Level.WARNING, "could not access case during getFilesWithHashSetHitsCount()"); + LOGGER.log(Level.WARNING, "could not access case during getFilesWithHashSetHitsCount()"); //NON-NLS } } @@ -202,7 +202,7 @@ public class DrawableGroup implements Comparable { @Override public String toString() { - return "Grouping{ keyProp=" + groupKey + '}'; + return "Grouping{ keyProp=" + groupKey + '}'; //NON-NLS } @Override diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupKey.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupKey.java index 79cbb1fba2..1073d587da 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupKey.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupKey.java @@ -57,7 +57,7 @@ public class GroupKey> implements Comparable @Override public String toString() { - return "GroupKey: " + getAttribute().attrName + " = " + getValue(); + return "GroupKey: " + getAttribute().attrName + " = " + getValue(); //NON-NLS } @Override diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupManager.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupManager.java index 200ef32a16..cebcd6c222 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupManager.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupManager.java @@ -62,6 +62,7 @@ import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.netbeans.api.progress.ProgressHandle; import org.netbeans.api.progress.ProgressHandleFactory; import org.openide.util.Exceptions; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.casemodule.events.ContentTagAddedEvent; import org.sleuthkit.autopsy.casemodule.events.ContentTagDeletedEvent; @@ -195,10 +196,10 @@ public class GroupManager { DrawableFile file = db.getFileFromID(fileID); return getGroupKeysForFile(file); } else { - Logger.getLogger(GroupManager.class.getName()).log(Level.WARNING, "Failed to load file with id: {0} from database. There is no database assigned.", fileID); + Logger.getLogger(GroupManager.class.getName()).log(Level.WARNING, "Failed to load file with id: {0} from database. There is no database assigned.", fileID); //NON-NLS } } catch (TskCoreException ex) { - Logger.getLogger(GroupManager.class.getName()).log(Level.SEVERE, "failed to load file with id: " + fileID + " from database", ex); + Logger.getLogger(GroupManager.class.getName()).log(Level.SEVERE, "failed to load file with id: " + fileID + " from database", ex); //NON-NLS } return Collections.emptySet(); } @@ -347,11 +348,11 @@ public class GroupManager { break; case MIME_TYPE: HashSet types = new HashSet<>(); - try (SleuthkitCase.CaseDbQuery executeQuery = controller.getSleuthKitCase().executeQuery("select group_concat(obj_id), mime_type from tsk_files group by mime_type "); + try (SleuthkitCase.CaseDbQuery executeQuery = controller.getSleuthKitCase().executeQuery("select group_concat(obj_id), mime_type from tsk_files group by mime_type "); //NON-NLS ResultSet resultSet = executeQuery.getResultSet();) { while (resultSet.next()) { - final String mimeType = resultSet.getString("mime_type"); - String objIds = resultSet.getString("group_concat(obj_id)"); + final String mimeType = resultSet.getString("mime_type"); //NON-NLS + String objIds = resultSet.getString("group_concat(obj_id)"); //NON-NLS Pattern.compile(",").splitAsStream(objIds) .map(Long::valueOf) @@ -370,7 +371,7 @@ public class GroupManager { return values; } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "TSK error getting list of type {0}", groupBy.getDisplayName()); + LOGGER.log(Level.WARNING, "TSK error getting list of type {0}", groupBy.getDisplayName()); //NON-NLS return Collections.emptyList(); } @@ -416,7 +417,7 @@ public class GroupManager { } } - return db.findAllFileIdsWhere("obj_id NOT IN (" + StringUtils.join(files, ',') + ")"); + return db.findAllFileIdsWhere("obj_id NOT IN (" + StringUtils.join(files, ',') + ")"); //NON-NLS } else { List contentTags = tagsManager.getContentTagsByTagName(tagsManager.getTagName(category)); @@ -428,7 +429,7 @@ public class GroupManager { } } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "TSK error getting files in Category:" + category.getDisplayName(), ex); + LOGGER.log(Level.WARNING, "TSK error getting files in Category:" + category.getDisplayName(), ex); //NON-NLS throw ex; } } @@ -444,7 +445,7 @@ public class GroupManager { } return files; } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "TSK error getting files with Tag:" + tagName.getDisplayName(), ex); + LOGGER.log(Level.WARNING, "TSK error getting files with Tag:" + tagName.getDisplayName(), ex); //NON-NLS throw ex; } } @@ -531,7 +532,7 @@ public class GroupManager { /** * an executor to submit async ui related background tasks to. */ - final ExecutorService regroupExecutor = Executors.newSingleThreadExecutor(new BasicThreadFactory.Builder().namingPattern("ui task -%d").build()); + final ExecutorService regroupExecutor = Executors.newSingleThreadExecutor(new BasicThreadFactory.Builder().namingPattern("ui task -%d").build()); //NON-NLS public ReadOnlyDoubleProperty regroupProgress() { return regroupProgress.getReadOnlyProperty(); @@ -682,7 +683,7 @@ public class GroupManager { return group; } } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "failed to get files for group: " + groupKey.getAttribute().attrName.toString() + " = " + groupKey.getValue(), ex); + LOGGER.log(Level.SEVERE, "failed to get files for group: " + groupKey.getAttribute().attrName.toString() + " = " + groupKey.getValue(), ex); //NON-NLS } } } @@ -693,13 +694,13 @@ public class GroupManager { HashSet hashSet = new HashSet<>(); String query = (null == mimeType) - ? "SELECT obj_id FROM tsk_files WHERE mime_type IS NULL" - : "SELECT obj_id FROM tsk_files WHERE mime_type = '" + mimeType + "'"; + ? "SELECT obj_id FROM tsk_files WHERE mime_type IS NULL" //NON-NLS + : "SELECT obj_id FROM tsk_files WHERE mime_type = '" + mimeType + "'"; //NON-NLS try (SleuthkitCase.CaseDbQuery executeQuery = controller.getSleuthKitCase().executeQuery(query); ResultSet resultSet = executeQuery.getResultSet();) { while (resultSet.next()) { - final long fileID = resultSet.getLong("obj_id"); + final long fileID = resultSet.getLong("obj_id"); //NON-NLS if (db.isInDB(fileID)) { hashSet.add(fileID); } @@ -717,6 +718,13 @@ public class GroupManager { * {@link Groupings} for them */ @SuppressWarnings({"unchecked", "rawtypes"}) + @NbBundle.Messages({"# {0} - groupBy attribute Name", + "# {1} - sortBy name", + "# {2} - sort Order", + "ReGroupTask.displayTitle=regrouping files by {0} sorted by {1} in {2} order", + "# {0} - groupBy attribute Name", + "# {1} - atribute value", + "ReGroupTask.progressUpdate=regrouping files by {0} : {1}"}) private class ReGroupTask> extends LoggedTask { private ProgressHandle groupProgress; @@ -728,7 +736,7 @@ public class GroupManager { private final SortOrder sortOrder; public ReGroupTask(DrawableAttribute groupBy, GroupSortBy sortBy, SortOrder sortOrder) { - super("regrouping files by " + groupBy.attrName.toString() + " sorted by " + sortBy.name() + " in " + sortOrder.toString() + " order", true); + super(Bundle.ReGroupTask_displayTitle(groupBy.attrName.toString(), sortBy.name(), sortOrder.toString()), true); this.groupBy = groupBy; this.sortBy = sortBy; @@ -747,7 +755,7 @@ public class GroupManager { return null; } - groupProgress = ProgressHandleFactory.createHandle("regrouping files by " + groupBy.attrName.toString() + " sorted by " + sortBy.name() + " in " + sortOrder.toString() + " order", this); + groupProgress = ProgressHandleFactory.createHandle(Bundle.ReGroupTask_displayTitle(groupBy.attrName.toString(), sortBy.name(), sortOrder.toString()), this); Platform.runLater(() -> { analyzedGroups.clear(); unSeenGroups.clear(); @@ -765,9 +773,9 @@ public class GroupManager { return null;//abort } p++; - updateMessage("regrouping files by " + groupBy.attrName.toString() + " : " + val); + updateMessage(Bundle.ReGroupTask_progressUpdate(groupBy.attrName.toString(), val)); updateProgress(p, vals.size()); - groupProgress.progress("regrouping files by " + groupBy.attrName.toString() + " : " + val, p); + groupProgress.progress(Bundle.ReGroupTask_progressUpdate(groupBy.attrName.toString(), val), p); popuplateIfAnalyzed(new GroupKey(groupBy, val), this); } Platform.runLater(() -> FXCollections.sort(analyzedGroups, sortBy.getGrpComparator(sortOrder))); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupSortBy.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupSortBy.java index 53f464dbb0..5d8740b343 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupSortBy.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/datamodel/grouping/GroupSortBy.java @@ -27,6 +27,7 @@ import javax.swing.SortOrder; import static javax.swing.SortOrder.ASCENDING; import static javax.swing.SortOrder.DESCENDING; import org.apache.commons.lang3.StringUtils; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; import org.sleuthkit.autopsy.imagegallery.datamodel.DrawableAttribute; @@ -35,13 +36,17 @@ import org.sleuthkit.autopsy.imagegallery.datamodel.DrawableAttribute; * down in Toolbar as well as each enum value having the stategy * ({@link Comparator}) for sorting the groups */ +@NbBundle.Messages({"GroupSortBy.groupSize=Group Size", + "GroupSortBy.groupName=Group Name", + "GroupSortBy.none=None", + "GroupSortBy.priority=Priority"}) public enum GroupSortBy implements ComparatorProvider { /** * sort the groups by the number of files in each sort the groups by the * number of files in each */ - FILE_COUNT("Group Size", true, "folder-open-image.png") { + FILE_COUNT(Bundle.GroupSortBy_groupSize(), true, "folder-open-image.png") { //NON-NLS @Override public Comparator getGrpComparator(final SortOrder sortOrder) { return applySortOrder(sortOrder, Comparator.comparingInt(DrawableGroup::getSize)); @@ -56,7 +61,7 @@ public enum GroupSortBy implements ComparatorProvider { * sort the groups by the natural order of the grouping value ( eg group * them by path alphabetically ) */ - GROUP_BY_VALUE("Group Name", true, "folder-rename.png") { + GROUP_BY_VALUE(Bundle.GroupSortBy_groupName(), true, "folder-rename.png") { //NON-NLS @Override public Comparator getGrpComparator(final SortOrder sortOrder) { return applySortOrder(sortOrder, Comparator.comparing(t -> t.getGroupByValueDislpayName())); @@ -71,7 +76,7 @@ public enum GroupSortBy implements ComparatorProvider { * don't sort the groups just use what ever order they come in (ingest * order) */ - NONE("None", false, "prohibition.png") { + NONE(Bundle.GroupSortBy_none(), false, "prohibition.png") { //NON-NLS @Override public Comparator getGrpComparator(SortOrder sortOrder) { return new NoOpComparator<>(); @@ -85,7 +90,7 @@ public enum GroupSortBy implements ComparatorProvider { /** * sort the groups by some priority metric to be determined and implemented */ - PRIORITY("Priority", false, "hashset_hits.png") { + PRIORITY(Bundle.GroupSortBy_priority(), false, "hashset_hits.png") { //NON-NLS @Override public Comparator getGrpComparator(SortOrder sortOrder) { return Comparator.nullsLast(Comparator.comparingDouble(DrawableGroup::getHashHitDensity).thenComparingInt(DrawableGroup::getSize).reversed()); @@ -128,7 +133,7 @@ public enum GroupSortBy implements ComparatorProvider { public Image getIcon() { if (icon == null) { if (StringUtils.isBlank(imageName) == false) { - this.icon = new Image("org/sleuthkit/autopsy/imagegallery/images/" + imageName, true); + this.icon = new Image("org/sleuthkit/autopsy/imagegallery/images/" + imageName, true); //NON-NLS } } return icon; diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/NoGroupsDialog.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/NoGroupsDialog.java index 402694bd07..872a2afc6b 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/NoGroupsDialog.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/NoGroupsDialog.java @@ -53,7 +53,7 @@ public class NoGroupsDialog extends GridPane { } private NoGroupsDialog() { - FXMLConstructor.construct(this, "NoGroupsDialog.fxml"); + FXMLConstructor.construct(this, "NoGroupsDialog.fxml"); //NON-NLS } public NoGroupsDialog(String message) { diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/StatusBar.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/StatusBar.java index c1d2fe7a7b..607dcd1b1c 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/StatusBar.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/StatusBar.java @@ -28,6 +28,7 @@ import javafx.scene.control.Label; import javafx.scene.control.ProgressBar; import javafx.scene.control.Tooltip; import javafx.scene.layout.AnchorPane; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; /** @@ -62,6 +63,9 @@ public class StatusBar extends AnchorPane { private ProgressBar bgTaskProgressBar; @FXML + @NbBundle.Messages({"StatusBar.fileUpdateTaskLabel.text= File Update Tasks", + "StatusBar.bgTaskLabel.text=Regrouping", + "StatuBar.toolTip=Some data may be out of date. Enable Image Gallery in Tools | Options | Image /Video Gallery , after ingest is complete to update the Image Gallery data."}) void initialize() { assert fileTaskProgresBar != null : "fx:id=\"fileTaskProgresBar\" was not injected: check your FXML file 'StatusBar.fxml'."; assert fileUpdateTaskLabel != null : "fx:id=\"fileUpdateTaskLabel\" was not injected: check your FXML file 'StatusBar.fxml'."; @@ -69,7 +73,7 @@ public class StatusBar extends AnchorPane { assert bgTaskLabel != null : "fx:id=\"bgTaskLabel\" was not injected: check your FXML file 'StatusBar.fxml'."; assert bgTaskProgressBar != null : "fx:id=\"bgTaskProgressBar\" was not injected: check your FXML file 'StatusBar.fxml'."; - fileUpdateTaskLabel.textProperty().bind(controller.getFileUpdateQueueSizeProperty().asString().concat(" File Update Tasks"));//;setText(newSize.toString() + " File Update Tasks"); + fileUpdateTaskLabel.textProperty().bind(controller.getFileUpdateQueueSizeProperty().asString().concat(Bundle.StatusBar_fileUpdateTaskLabel_text()));//;setText(newSize.toString() + " File Update Tasks"); fileTaskProgresBar.progressProperty().bind(controller.getFileUpdateQueueSizeProperty().negate()); // controller.getFileUpdateQueueSizeProperty().addListener((ov, oldSize, newSize) -> { // Platform.runLater(() -> { @@ -83,7 +87,7 @@ public class StatusBar extends AnchorPane { if(controller.regroupProgress().lessThan(1.0).get()){ // Regrouping in progress bgTaskProgressBar.progressProperty().setValue(-1.0); - bgTaskLabel.setText("Regrouping"); + bgTaskLabel.setText(Bundle.StatusBar_bgTaskLabel_text()); } else{ // Clear the progress bar bgTaskProgressBar.progressProperty().setValue(0.0); @@ -94,14 +98,14 @@ public class StatusBar extends AnchorPane { Platform.runLater(() -> { - staleLabel.setTooltip(new Tooltip("Some data may be out of date. Enable Image Gallery in Tools | Options | Image /Video Gallery , after ingest is complete to update the Image Gallery data.")); + staleLabel.setTooltip(new Tooltip(Bundle.StatuBar_toolTip())); }); staleLabel.visibleProperty().bind(controller.stale()); } public StatusBar(ImageGalleryController controller) { this.controller = controller; - FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("StatusBar.fxml")); + FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("StatusBar.fxml")); //NON-NLS fxmlLoader.setRoot(this); fxmlLoader.setController(this); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/SummaryTablePane.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/SummaryTablePane.java index 6fe4ce9b44..b9b1c04813 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/SummaryTablePane.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/SummaryTablePane.java @@ -79,7 +79,7 @@ public class SummaryTablePane extends AnchorPane { public SummaryTablePane(ImageGalleryController controller) { this.controller = controller; - FXMLConstructor.construct(this, "SummaryTablePane.fxml"); + FXMLConstructor.construct(this, "SummaryTablePane.fxml"); //NON-NLS } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/Toolbar.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/Toolbar.java index 91ca4a142c..5c68a94436 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/Toolbar.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/Toolbar.java @@ -142,7 +142,7 @@ public class Toolbar extends ToolBar { try { new TagGroupAction(controller.getTagsManager().getFollowUpTagName(), controller).handle(actionEvent); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Could create follow up tag menu item", ex); + LOGGER.log(Level.SEVERE, "Could create follow up tag menu item", ex); //NON-NLS } }); @@ -213,7 +213,7 @@ public class Toolbar extends ToolBar { private Toolbar(ImageGalleryController controller) { this.controller = controller; - FXMLConstructor.construct(this, "Toolbar.fxml"); + FXMLConstructor.construct(this, "Toolbar.fxml"); //NON-NLS } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/VideoPlayer.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/VideoPlayer.java index 9b60278865..01b0e5dd1b 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/VideoPlayer.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/VideoPlayer.java @@ -40,19 +40,20 @@ import javafx.scene.media.MediaView; import javafx.scene.text.Text; import javafx.util.Duration; import javafx.util.StringConverter; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.imagegallery.FXMLConstructor; import org.sleuthkit.autopsy.imagegallery.datamodel.VideoFile; public class VideoPlayer extends BorderPane { - private static final Image VOLUME_HIGH = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume.png"); - private static final Image VOLUME_LOW = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume-low.png"); - private static final Image VOLUME_ZERO = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume-none.png"); - private static final Image VOLUME_MUTE = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume-control-mute.png"); + private static final Image VOLUME_HIGH = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume.png"); //NON-NLS + private static final Image VOLUME_LOW = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume-low.png"); //NON-NLS + private static final Image VOLUME_ZERO = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume-none.png"); //NON-NLS + private static final Image VOLUME_MUTE = new Image("/org/sleuthkit/autopsy/imagegallery/images/speaker-volume-control-mute.png"); //NON-NLS - private static final Image PLAY = new Image("/org/sleuthkit/autopsy/imagegallery/images/media_controls_play_small.png", true); - private static final Image PAUSE = new Image("/org/sleuthkit/autopsy/imagegallery/images/media_controls_pause_small.png", true); + private static final Image PLAY = new Image("/org/sleuthkit/autopsy/imagegallery/images/media_controls_play_small.png", true); //NON-NLS + private static final Image PAUSE = new Image("/org/sleuthkit/autopsy/imagegallery/images/media_controls_pause_small.png", true); //NON-NLS private final MediaPlayer mp; @@ -106,6 +107,8 @@ public class VideoPlayer extends BorderPane { private final VideoFile file; @FXML + @NbBundle.Messages({"# {0} - exception type", + "VideoPlayer.errNotice={0}\nSee the logs for details."}) void initialize() { assert controlButton != null : "fx:id=\"controlButton\" was not injected: check your FXML file 'MediaControl.fxml'."; assert timeSlider != null : "fx:id=\"timeSlider\" was not injected: check your FXML file 'MediaControl.fxml'."; @@ -114,14 +117,14 @@ public class VideoPlayer extends BorderPane { final MediaException ex = mp.getError(); if (ex != null) { Platform.runLater(() -> { - Logger.getLogger(VideoFile.class.getName()).log(Level.WARNING, ex.getType() + " Failed to initialize MediaControl for file " + file.getName(), ex); - setCenter(new Text(ex.getType() + "\nSee the logs for details.")); + Logger.getLogger(VideoFile.class.getName()).log(Level.WARNING, ex.getType() + " Failed to initialize MediaControl for file " + file.getName(), ex); //NON-NLS + setCenter(new Text(Bundle.VideoPlayer_errNotice(ex.getType()))); setBottom(null); }); } }); mp.statusProperty().addListener((observableStatus, oldStatus, newStatus) -> { - Logger.getAnonymousLogger().log(Level.INFO, "media player: {0}", newStatus); + Logger.getAnonymousLogger().log(Level.INFO, "media player: {0}", newStatus); //NON-NLS }); mediaView.setMediaPlayer(mp); mediaView.fitHeightProperty().bind(this.heightProperty().subtract(playControlBar.heightProperty())); @@ -236,7 +239,7 @@ public class VideoPlayer extends BorderPane { public VideoPlayer(MediaPlayer mp, VideoFile file) { this.file = file; this.mp = mp; - FXMLConstructor.construct(this, "MediaControl.fxml"); + FXMLConstructor.construct(this, "MediaControl.fxml"); //NON-NLS } protected void updateTime() { @@ -277,10 +280,10 @@ public class VideoPlayer extends BorderPane { int elapsedSeconds = totalSeconds - elapsedMinutes * 60; if (elapsedHours > 0) { - return String.format("%d:%02d:%02d", elapsedHours, + return String.format("%d:%02d:%02d", elapsedHours, //NON-NLS elapsedMinutes, elapsedSeconds); } else { - return String.format("%02d:%02d", elapsedMinutes, + return String.format("%02d:%02d", elapsedMinutes, //NON-NLS elapsedSeconds); } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTile.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTile.java index 674aad0260..badfc20b92 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTile.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTile.java @@ -54,7 +54,7 @@ public class DrawableTile extends DrawableTileBase { try { setEffect(Objects.equals(newValue, getFileID()) ? LAST_SELECTED_EFFECT : null); } catch (java.lang.IllegalStateException ex) { - Logger.getLogger(DrawableTile.class.getName()).log(Level.WARNING, "Error displaying tile"); + Logger.getLogger(DrawableTile.class.getName()).log(Level.WARNING, "Error displaying tile"); //NON-NLS } }; @@ -78,7 +78,7 @@ public class DrawableTile extends DrawableTileBase { public DrawableTile(GroupPane gp, ImageGalleryController controller) { super(gp, controller); - FXMLConstructor.construct(this, "DrawableTile.fxml"); + FXMLConstructor.construct(this, "DrawableTile.fxml"); //NON-NLS } /** diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTileBase.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTileBase.java index 2058737b3c..3b16fa6b77 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTileBase.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableTileBase.java @@ -95,8 +95,8 @@ public abstract class DrawableTileBase extends DrawableUIBase { private static final Border SELECTED_BORDER = new Border(new BorderStroke(Color.BLUE, BorderStrokeStyle.SOLID, new CornerRadii(2), new BorderWidths(3))); //TODO: do this in CSS? -jm - protected static final Image followUpIcon = new Image("org/sleuthkit/autopsy/imagegallery/images/flag_red.png"); - protected static final Image followUpGray = new Image("org/sleuthkit/autopsy/imagegallery/images/flag_gray.png"); + protected static final Image followUpIcon = new Image("org/sleuthkit/autopsy/imagegallery/images/flag_red.png"); //NON-NLS + protected static final Image followUpGray = new Image("org/sleuthkit/autopsy/imagegallery/images/flag_gray.png"); //NON-NLS protected final FileIDSelectionModel selectionModel; private static ContextMenu contextMenu; @@ -145,6 +145,8 @@ public abstract class DrawableTileBase extends DrawableUIBase { * @param groupPane the value of groupPane * @param controller the value of controller */ + @NbBundle.Messages({"DrawableTileBase.menuItem.extractFiles=Extract File(s)", + "DrawableTileBase.menuItem.showContentViewer=Show Content Viewer"}) protected DrawableTileBase(GroupPane groupPane, final ImageGalleryController controller) { super(controller); this.groupPane = groupPane; @@ -204,7 +206,7 @@ public abstract class DrawableTileBase extends DrawableUIBase { menuItems.add(new AddDrawableTagAction(getController()).getPopupMenu()); - final MenuItem extractMenuItem = new MenuItem("Extract File(s)"); + final MenuItem extractMenuItem = new MenuItem(Bundle.DrawableTileBase_menuItem_extractFiles()); extractMenuItem.setOnAction((ActionEvent t) -> { SwingUtilities.invokeLater(() -> { TopComponent etc = WindowManager.getDefault().findTopComponent(ImageGalleryTopComponent.PREFERRED_ID); @@ -213,10 +215,10 @@ public abstract class DrawableTileBase extends DrawableUIBase { }); menuItems.add(extractMenuItem); - MenuItem contentViewer = new MenuItem("Show Content Viewer"); + MenuItem contentViewer = new MenuItem(Bundle.DrawableTileBase_menuItem_showContentViewer()); contentViewer.setOnAction((ActionEvent t) -> { SwingUtilities.invokeLater(() -> { - new NewWindowViewAction("Show Content Viewer", new FileNode(file.getAbstractFile())).actionPerformed(null); + new NewWindowViewAction(Bundle.DrawableTileBase_menuItem_showContentViewer(), new FileNode(file.getAbstractFile())).actionPerformed(null); }); }); menuItems.add(contentViewer); @@ -260,7 +262,7 @@ public abstract class DrawableTileBase extends DrawableUIBase { selectionModel.clearAndSelect(file.getId()); new AddDrawableTagAction(getController()).addTag(getController().getTagsManager().getFollowUpTagName(), ""); } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to add Follow Up tag. Could not load TagName.", ex); + LOGGER.log(Level.SEVERE, "Failed to add Follow Up tag. Could not load TagName.", ex); //NON-NLS } } else { new DeleteFollowUpTagAction(getController(), file).handle(event); @@ -276,7 +278,7 @@ public abstract class DrawableTileBase extends DrawableUIBase { return DrawableAttribute.TAGS.getValue(getFile().get()).stream() .anyMatch(followUpTagName::equals); } catch (TskCoreException ex) { - LOGGER.log(Level.WARNING, "failed to get follow up tag name ", ex); + LOGGER.log(Level.WARNING, "failed to get follow up tag name ", ex); //NON-NLS return true; } } else { @@ -363,7 +365,7 @@ public abstract class DrawableTileBase extends DrawableUIBase { }); } } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to get followup tag name. Unable to update follow up status for file. ", ex); + LOGGER.log(Level.SEVERE, "Failed to get followup tag name. Unable to update follow up status for file. ", ex); //NON-NLS } }); } @@ -380,7 +382,7 @@ public abstract class DrawableTileBase extends DrawableUIBase { updateFollowUpIcon(); } } catch (TskCoreException ex) { - LOGGER.log(Level.SEVERE, "Failed to get followup tag name. Unable to update follow up status for file. ", ex); + LOGGER.log(Level.SEVERE, "Failed to get followup tag name. Unable to update follow up status for file. ", ex); //NON-NLS } }); } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableUIBase.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableUIBase.java index d77eee7f44..1a6bfd227e 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableUIBase.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableUIBase.java @@ -102,7 +102,7 @@ abstract public class DrawableUIBase extends AnchorPane implements DrawableView try { fileOpt = Optional.ofNullable(getController().getFileFromId(fileIDOpt.get())); } catch (TskCoreException ex) { - Logger.getAnonymousLogger().log(Level.WARNING, "failed to get DrawableFile for obj_id" + fileIDOpt.get(), ex); + Logger.getAnonymousLogger().log(Level.WARNING, "failed to get DrawableFile for obj_id" + fileIDOpt.get(), ex); //NON-NLS fileOpt = Optional.empty(); } return fileOpt; @@ -147,7 +147,7 @@ abstract public class DrawableUIBase extends AnchorPane implements DrawableView myTask.setOnFailed(failed -> { Throwable exception = myTask.getException(); if (exception instanceof OutOfMemoryError - && exception.getMessage().contains("Java heap space")) { + && exception.getMessage().contains("Java heap space")) { //NON-NLS showErrorNode(Bundle.DrawableUIBase_errorLabel_OOMText(), file); } else { showErrorNode(Bundle.DrawableUIBase_errorLabel_text(), file); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableView.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableView.java index 96d30afd93..1219e2d1a8 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableView.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/DrawableView.java @@ -92,7 +92,7 @@ public interface DrawableView { } catch (NullPointerException ex) { // I think this happens when we're in the process of removing images from the view while // also trying to update it? - Logger.getLogger(DrawableView.class.getName()).log(Level.WARNING, "Error looking up hash set hits"); + Logger.getLogger(DrawableView.class.getName()).log(Level.WARNING, "Error looking up hash set hits"); //NON-NLS return false; } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/GroupPane.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/GroupPane.java index a31001fd2f..965736ece8 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/GroupPane.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/GroupPane.java @@ -89,6 +89,8 @@ import javafx.scene.layout.Priority; import javafx.scene.layout.Region; import javafx.scene.paint.Color; import javafx.util.Duration; + +import javax.ejb.MessageDriven; import javax.swing.Action; import javax.swing.SwingUtilities; import org.apache.commons.lang3.StringUtils; @@ -97,6 +99,7 @@ import org.controlsfx.control.GridView; import org.controlsfx.control.SegmentedButton; import org.controlsfx.control.action.ActionUtils; import org.openide.util.Lookup; +import org.openide.util.NbBundle; import org.openide.util.actions.Presenter; import org.openide.windows.TopComponent; import org.openide.windows.WindowManager; @@ -273,7 +276,7 @@ public class GroupPane extends BorderPane { undoAction = new UndoAction(controller); redoAction = new RedoAction(controller); - FXMLConstructor.construct(this, "GroupPane.fxml"); + FXMLConstructor.construct(this, "GroupPane.fxml"); //NON-NLS } @ThreadConfined(type = ThreadType.JFX) @@ -330,10 +333,14 @@ public class GroupPane extends BorderPane { /** * create the string to display in the group header */ + @NbBundle.Messages({"# {0} - default group name", + "# {1} - hashset hits count", + "# {2} - group size", + "GroupPane.headerString={0} -- {1} hash set hits / {2} files"}) protected String getHeaderString() { return isNull(getGroup()) ? "" - : StringUtils.defaultIfBlank(getGroup().getGroupByValueDislpayName(), DrawableGroup.getBlankGroupName()) + " -- " - + getGroup().getHashSetHitsCount() + " hash set hits / " + getGroup().getSize() + " files"; + : Bundle.GroupPane_headerString(StringUtils.defaultIfBlank(getGroup().getGroupByValueDislpayName(), DrawableGroup.getBlankGroupName()), + getGroup().getHashSetHitsCount(), getGroup().getSize()); } ContextMenu getContextMenu() { @@ -390,6 +397,7 @@ public class GroupPane extends BorderPane { * checks that FXML loading went ok and performs additional setup */ @FXML + @NbBundle.Messages({"GroupPane.gridViewContextMenuItem.extractFiles=Extract File(s)"}) void initialize() { assert cat0Toggle != null : "fx:id=\"cat0Toggle\" was not injected: check your FXML file 'SlideShowView.fxml'."; assert cat1Toggle != null : "fx:id=\"cat1Toggle\" was not injected: check your FXML file 'SlideShowView.fxml'."; @@ -451,13 +459,13 @@ public class GroupPane extends BorderPane { try { tagSelectedSplitMenu.setText(controller.getTagsManager().getFollowUpTagName().getDisplayName()); } catch (TskCoreException tskCoreException) { - LOGGER.log(Level.WARNING, "failed to load FollowUpTagName", tskCoreException); + LOGGER.log(Level.WARNING, "failed to load FollowUpTagName", tskCoreException); //NON-NLS } tagSelectedSplitMenu.setOnAction(actionEvent -> { try { new TagSelectedFilesAction(controller.getTagsManager().getFollowUpTagName(), controller).handle(actionEvent); } catch (TskCoreException tskCoreException) { - LOGGER.log(Level.WARNING, "failed to load FollowUpTagName", tskCoreException); + LOGGER.log(Level.WARNING, "failed to load FollowUpTagName", tskCoreException); //NON-NLS } }); @@ -528,7 +536,7 @@ public class GroupPane extends BorderPane { } } } - final MenuItem extractMenuItem = new MenuItem("Extract File(s)"); + final MenuItem extractMenuItem = new MenuItem(Bundle.GroupPane_gridViewContextMenuItem_extractFiles()); extractMenuItem.setOnAction((ActionEvent t) -> { SwingUtilities.invokeLater(() -> { TopComponent etc = WindowManager.getDefault().findTopComponent(ImageGalleryTopComponent.PREFERRED_ID); @@ -730,7 +738,7 @@ public class GroupPane extends BorderPane { if (gridView == null || gridView.getSkin() == null) { return Optional.empty(); } - return Optional.ofNullable((ScrollBar) gridView.getSkin().getNode().lookup(".scroll-bar")); + return Optional.ofNullable((ScrollBar) gridView.getSkin().getNode().lookup(".scroll-bar")); //NON-NLS } void makeSelection(Boolean shiftDown, Long newFileID) { diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/MetaDataPane.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/MetaDataPane.java index 32b8b8c71f..24e2072aec 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/MetaDataPane.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/MetaDataPane.java @@ -50,6 +50,7 @@ import javafx.scene.input.KeyEvent; import javafx.scene.layout.Region; import javafx.scene.text.Text; import javafx.util.Pair; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.events.ContentTagAddedEvent; import org.sleuthkit.autopsy.casemodule.events.ContentTagDeletedEvent; import org.sleuthkit.autopsy.coreutils.Logger; @@ -84,10 +85,11 @@ public class MetaDataPane extends DrawableUIBase { public MetaDataPane(ImageGalleryController controller) { super(controller); - FXMLConstructor.construct(this, "MetaDataPane.fxml"); + FXMLConstructor.construct(this, "MetaDataPane.fxml"); //NON-NLS } @FXML + @NbBundle.Messages({"MetaDataPane.tableView.placeholder=Select a file to show its details here."}) void initialize() { assert attributeColumn != null : "fx:id=\"attributeColumn\" was not injected: check your FXML file 'MetaDataPane.fxml'."; assert imageView != null : "fx:id=\"imageView\" was not injected: check your FXML file 'MetaDataPane.fxml'."; @@ -116,7 +118,7 @@ public class MetaDataPane extends DrawableUIBase { }); tableView.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY); - tableView.setPlaceholder(new Label("Select a file to show its details here.")); + tableView.setPlaceholder(new Label(Bundle.MetaDataPane_tableView_placeholder())); tableView.getColumns().setAll(Arrays.asList(attributeColumn, valueColumn)); attributeColumn.setPrefWidth(USE_COMPUTED_SIZE); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/SlideShowView.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/SlideShowView.java index 59d747a655..1818f65521 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/SlideShowView.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/drawableviews/SlideShowView.java @@ -77,7 +77,7 @@ public class SlideShowView extends DrawableTileBase { SlideShowView(GroupPane gp, ImageGalleryController controller) { super(gp, controller); - FXMLConstructor.construct(this, "SlideShowView.fxml"); + FXMLConstructor.construct(this, "SlideShowView.fxml"); //NON-NLS } @FXML @@ -137,7 +137,7 @@ public class SlideShowView extends DrawableTileBase { }); } catch (NullPointerException ex) { // The case has likely been closed - LOGGER.log(Level.WARNING, "Error accessing groupPane"); + LOGGER.log(Level.WARNING, "Error accessing groupPane"); //NON-NLS } } @@ -278,9 +278,12 @@ public class SlideShowView extends DrawableTileBase { * @return supplemental text to include in the label, specifically: "image x * of y" */ + @NbBundle.Messages({"# {0} - file id number", + "# {1} - number of file ids", + "SlideShowView.supplementalText={0} of {1} in group"}) private String getSupplementalText() { final ObservableList fileIds = getGroupPane().getGroup().getFileIDs(); - return getFileID().map(fileID -> " ( " + (fileIds.indexOf(fileID) + 1) + " of " + fileIds.size() + " in group )") + return getFileID().map(fileID -> " ( " + Bundle.SlideShowView_supplementalText(fileIds.indexOf(fileID) + 1, fileIds.size()) + " )") .orElse(""); } @@ -324,7 +327,7 @@ public class SlideShowView extends DrawableTileBase { final Media media = file.getMedia(); return new VideoPlayer(new MediaPlayer(media), file); } catch (MediaException | IOException | OutOfMemoryError ex) { - LOGGER.log(Level.WARNING, "Failed to initialize VideoPlayer for {0} : " + ex.toString(), file.getContentPathSafe()); + LOGGER.log(Level.WARNING, "Failed to initialize VideoPlayer for {0} : " + ex.toString(), file.getContentPathSafe()); //NON-NLS return doReadImageTask(file); } } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupComparators.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupComparators.java index c7bce311c4..a5bbb40f49 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupComparators.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupComparators.java @@ -21,27 +21,34 @@ package org.sleuthkit.autopsy.imagegallery.gui.navpanel; import com.google.common.collect.ImmutableList; import java.util.Comparator; import java.util.function.Function; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.imagegallery.datamodel.grouping.DrawableGroup; /** * */ +@NbBundle.Messages({"GroupComparators.uncategorizedCount=Uncategorized Count", + "GroupComparators.groupName=Group Name", + "GroupComparators.hitCount=Hit Count", + "GroupComparators.groupSize=Group Size", + "GroupComparators.hitDensity=Hit Density"}) final class GroupComparators> implements Comparator { static final GroupComparators UNCATEGORIZED_COUNT = - new GroupComparators<>("Uncategorized Count", DrawableGroup::getUncategorizedCount, String::valueOf, false); + new GroupComparators<>(Bundle.GroupComparators_uncategorizedCount(), DrawableGroup::getUncategorizedCount, String::valueOf, false); static final GroupComparators ALPHABETICAL = - new GroupComparators<>("Group Name", DrawableGroup::getGroupByValueDislpayName, String::valueOf, false); + new GroupComparators<>(Bundle.GroupComparators_groupName(), DrawableGroup::getGroupByValueDislpayName, String::valueOf, false); static final GroupComparators HIT_COUNT = - new GroupComparators<>("Hit Count", DrawableGroup::getHashSetHitsCount, String::valueOf, true); + new GroupComparators<>(Bundle.GroupComparators_hitCount(), DrawableGroup::getHashSetHitsCount, String::valueOf, true); static final GroupComparators FILE_COUNT = - new GroupComparators<>("Group Size", DrawableGroup::getSize, String::valueOf, true); + new GroupComparators<>(Bundle.GroupComparators_groupSize(), DrawableGroup::getSize, String::valueOf, true); static final GroupComparators HIT_FILE_RATIO = - new GroupComparators<>("Hit Density", DrawableGroup::getHashHitDensity, density -> String.format("%.2f", density) + "%", true); + new GroupComparators<>(Bundle.GroupComparators_hitDensity(), DrawableGroup::getHashHitDensity, density -> String.format("%.2f", density) + "%", true); //NON-NLS private final static ImmutableList> values = ImmutableList.of(UNCATEGORIZED_COUNT, ALPHABETICAL, HIT_COUNT, FILE_COUNT, HIT_FILE_RATIO); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupListCell.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupListCell.java index 6951d67997..37caa8bd78 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupListCell.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupListCell.java @@ -42,7 +42,7 @@ class GroupListCell extends ListCell { * folder(with no DrawableFiles) in the file system hierarchy. */ private static final Image EMPTY_FOLDER_ICON = - new Image(GroupTreeCell.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/folder.png")); + new Image(GroupTreeCell.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/folder.png")); //NON-NLS /** * reference to group files listener that allows us to remove it from a @@ -70,8 +70,8 @@ class GroupListCell extends ListCell { GroupListCell(ReadOnlyObjectProperty> sortOrderProperty) { this.sortOrder = sortOrderProperty; - getStylesheets().add(GroupTreeCell.class.getResource("GroupTreeCell.css").toExternalForm()); - getStyleClass().add("groupTreeCell"); //reduce indent to 5, default is 10 which uses up a lot of space. + getStylesheets().add(GroupTreeCell.class.getResource("GroupTreeCell.css").toExternalForm()); //NON-NLS + getStyleClass().add("groupTreeCell"); //reduce indent to 5, default is 10 which uses up a lot of space. NON-NLS //since end of path is probably more interesting put ellipsis at front setTextOverrun(OverrunStyle.LEADING_ELLIPSIS); @@ -145,7 +145,7 @@ class GroupListCell extends ListCell { private String getSeenStyleClass() { return Optional.ofNullable(getItem()) .map(DrawableGroup::isSeen) - .map(seen -> seen ? "" : "-fx-font-weight:bold;") + .map(seen -> seen ? "" : "-fx-font-weight:bold;") //NON-NLS .orElse(""); //if item is null or group is null } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTree.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTree.java index e371644944..ffe9df9a51 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTree.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTree.java @@ -32,6 +32,8 @@ import javafx.scene.control.TreeItem; import javafx.scene.control.TreeView; import javafx.scene.image.ImageView; import org.apache.commons.lang3.StringUtils; +import org.apache.poi.util.Beta; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.ThreadConfined; import org.sleuthkit.autopsy.imagegallery.FXMLConstructor; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; @@ -53,15 +55,16 @@ final public class GroupTree extends NavPanel> { public GroupTree(ImageGalleryController controller) { super(controller); - FXMLConstructor.construct(this, "NavPanel.fxml"); + FXMLConstructor.construct(this, "NavPanel.fxml"); //NON-NLS } @FXML @Override + @NbBundle.Messages({"GroupTree.displayName.allGroups=All Groups"}) void initialize() { super.initialize(); - setText("All Groups"); - setGraphic(new ImageView("org/sleuthkit/autopsy/imagegallery/images/Folder-icon.png")); + setText(Bundle.GroupTree_displayName_allGroups()); + setGraphic(new ImageView("org/sleuthkit/autopsy/imagegallery/images/Folder-icon.png")); //NON-NLS getBorderPane().setCenter(groupTree); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTreeCell.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTreeCell.java index 917aa35084..a26ec693c7 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTreeCell.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/GroupTreeCell.java @@ -47,7 +47,7 @@ class GroupTreeCell extends TreeCell { * folder(with no DrawableFiles) in the file system hierarchy. */ private static final Image EMPTY_FOLDER_ICON = - new Image(GroupTreeCell.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/folder.png")); + new Image(GroupTreeCell.class.getResourceAsStream("/org/sleuthkit/autopsy/imagegallery/images/folder.png")); //NON-NLS /** * reference to group files listener that allows us to remove it from a @@ -75,8 +75,8 @@ class GroupTreeCell extends TreeCell { GroupTreeCell(ReadOnlyObjectProperty> sortOrderProperty) { this.sortOrder = sortOrderProperty; - getStylesheets().add(GroupTreeCell.class.getResource("GroupTreeCell.css").toExternalForm()); - getStyleClass().add("groupTreeCell"); //reduce indent to 5, default is 10 which uses up a lot of space. + getStylesheets().add(GroupTreeCell.class.getResource("GroupTreeCell.css").toExternalForm()); //NON-NLS + getStyleClass().add("groupTreeCell"); //reduce indent to 5, default is 10 which uses up a lot of space. NON-NLS //since end of path is probably more interesting put ellipsis at front setTextOverrun(OverrunStyle.LEADING_ELLIPSIS); @@ -161,7 +161,7 @@ class GroupTreeCell extends TreeCell { return Optional.ofNullable(getItem()) .map(GroupTreeNode::getGroup) .map(DrawableGroup::isSeen) - .map(seen -> seen ? "" : "-fx-font-weight:bold;") + .map(seen -> seen ? "" : "-fx-font-weight:bold;") //NON-NLS .orElse(""); //if item is null or group is null } diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/HashHitGroupList.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/HashHitGroupList.java index 71f8aa026f..03c6663369 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/HashHitGroupList.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/gui/navpanel/HashHitGroupList.java @@ -24,6 +24,7 @@ import javafx.fxml.FXML; import javafx.scene.control.ListView; import javafx.scene.control.SelectionModel; import javafx.scene.image.ImageView; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.ThreadConfined; import org.sleuthkit.autopsy.imagegallery.FXMLConstructor; import org.sleuthkit.autopsy.imagegallery.ImageGalleryController; @@ -47,7 +48,7 @@ final public class HashHitGroupList extends NavPanel { public HashHitGroupList(ImageGalleryController controller) { super(controller); - FXMLConstructor.construct(this, "NavPanel.fxml"); + FXMLConstructor.construct(this, "NavPanel.fxml"); //NON-NLS } @ThreadConfined(type = ThreadConfined.ThreadType.JFX) @@ -68,11 +69,12 @@ final public class HashHitGroupList extends NavPanel { @FXML @Override + @NbBundle.Messages({"HashHitGroupList.displayName.onlyHashHits=Only Hash Hits"}) void initialize() { super.initialize(); - setText("Only Hash Hits"); - setGraphic(new ImageView("org/sleuthkit/autopsy/imagegallery/images/hashset_hits.png")); + setText(Bundle.HashHitGroupList_displayName_onlyHashHits()); + setGraphic(new ImageView("org/sleuthkit/autopsy/imagegallery/images/hashset_hits.png")); //NON-NLS getBorderPane().setCenter(groupList); sorted = getController().getGroupManager().getAnalyzedGroups().filtered((DrawableGroup t) -> t.getHashSetHitsCount() > 0).sorted(getDefaultComparator()); diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties index 39ce8b000a..ec90106241 100644 --- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties +++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle.properties @@ -110,7 +110,7 @@ KeywordSearchFilterNode.getFileActions.viewInNewWinActionLbl=View in New Window KeywordSearchIngestModule.init.badInitMsg=Keyword search server was not properly initialized, cannot run keyword search ingest. KeywordSearchIngestModule.init.tryStopSolrMsg={0}
Please try stopping old java Solr process (if it exists) and restart the application. KeywordSearchIngestModule.init.noKwInLstMsg=No keywords in keyword list. -KeywordSearchIngestModule.init.onlyIdxKwSkipMsg=Only indexing will be done and and keyword search will be skipped (you can still add keyword lists using the Keyword Lists - Add to Ingest). +KeywordSearchIngestModule.init.onlyIdxKwSkipMsg=Only indexing will be done and keyword search will be skipped (you can still add keyword lists using the Keyword Lists - Add to Ingest). KeywordSearchIngestModule.doInBackGround.displayName=Periodic Keyword Search KeywordSearchIngestModule.doInBackGround.finalizeMsg= - Finalizing KeywordSearchIngestModule.doInBackGround.pendingMsg= (Pending) diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle_ja.properties b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle_ja.properties index f02aafb699..ea8d0a5c4d 100644 --- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle_ja.properties +++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/Bundle_ja.properties @@ -40,24 +40,24 @@ KeywordSearchEditListPanel.keywordsLabel.text=\u30AD\u30FC\u30EF\u30FC\u30C9\uFF OpenIDE-Module-Short-Description=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB\u3001\u62BD\u51FA\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8\u30D3\u30E5\u30FC\u30A2\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30C4\u30FC\u30EB KeywordSearchListsViewerPanel.manageListsButton.toolTipText=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u3001\u30EA\u30B9\u30C8\u306E\u8A2D\u5B9A\u3068\u95A2\u9023\u3059\u308B\u30AD\u30FC\u30EF\u30FC\u30C9\u306E\u7BA1\u7406\u3002\u3053\u306E\u8A2D\u5B9A\u306F\u5168\u3066\u306E\u30B1\u30FC\u30B9\u306B\u9069\u7528\u3055\u308C\u307E\u3059\u3002 AbstractKeywordSearchPerformer.search.dialogErrorHeader=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A8\u30E9\u30FC -AbstractKeywordSearchPerformer.search.invalidSyntaxHeader=\u30B7\u30F3\u30BF\u30C3\u30AF\u30B9\u30A8\u30E9\u30FC -AbstractKeywordSearchPerformer.search.searchIngestInProgressTitle=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3092\u5B9F\u884C\u4E2D -AbstractKeywordSearchPerformer.search.ingestInProgressBody=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3092\u5B9F\u884C\u4E2D
\u5168\u3066\u306E\u30D5\u30A1\u30A4\u30EB\u304C\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u691C\u7D22\u7D50\u679C\u304C\u4E0D\u5B8C\u5168\u306B\u306A\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002
\u3053\u306E\u691C\u7D22\u3092\u5B9F\u884C\u3057\u307E\u3059\u304B\uFF1F -AbstractKeywordSearchPerformer.search.emptyKeywordErrorBody=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u304C\u7A7A\u767D\u3067\u3059\u3002\u6700\u4F4E\uFF11\u3064\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u4E0B\u3055\u3044\u3002 -AbstractKeywordSearchPerformer.search.noFilesInIdxMsg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u307E\u3060\u30D5\u30A1\u30A4\u30EB\u304C\u3042\u308A\u307E\u305B\u3093\u3002
\u3057\u3070\u3089\u304F\u3057\u3066\u304B\u3089\u518D\u5EA6\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306F\u3000{0}\u3000\u5206\u6BCE\u66F4\u65B0\u3055\u308C\u307E\u3059\u3002 +AbstractKeywordSearchPerformer.search.invalidSyntaxHeader=\u30AF\u30A8\u30EA\u30B7\u30F3\u30BF\u30C3\u30AF\u30B9\u30A8\u30E9\u30FC +AbstractKeywordSearchPerformer.search.searchIngestInProgressTitle=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u5B9F\u884C\u4E2D +AbstractKeywordSearchPerformer.search.ingestInProgressBody=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u5B9F\u884C\u4E2D
\u5168\u3066\u306E\u30D5\u30A1\u30A4\u30EB\u304C\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u691C\u7D22\u7D50\u679C\u304C\u4E0D\u5B8C\u5168\u306B\u306A\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002
\u3053\u306E\u691C\u7D22\u3092\u5B9F\u884C\u3057\u307E\u3059\u304B\uFF1F +AbstractKeywordSearchPerformer.search.emptyKeywordErrorBody=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u304C\u7A7A\u767D\u3067\u3059\u3002\u6700\u4F4E\uFF11\u3064\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u30EA\u30B9\u30C8\u306B\u8FFD\u52A0\u3057\u3066\u4E0B\u3055\u3044\u3002 +AbstractKeywordSearchPerformer.search.noFilesInIdxMsg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u307E\u3060\u30D5\u30A1\u30A4\u30EB\u304C\u3042\u308A\u307E\u305B\u3093\u3002
\u3057\u3070\u3089\u304F\u3057\u3066\u304B\u3089\u518D\u5EA6\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306F{0}\u5206\u3054\u3068\u306B\u66F4\u65B0\u3055\u308C\u307E\u3059\u3002 AbstractKeywordSearchPerformer.search.noFilesIdxdMsg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u304C\u3042\u308A\u307E\u305B\u3093\u3002
\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u6709\u52B9\u5316\u3057\u3066\u30A4\u30E1\u30FC\u30B8\u3092\u518D\u5EA6\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3002 -ExtractedContentPanel.setMarkup.panelTxt=\u30C6\u30AD\u30B9\u30C8\u30ED\u30FC\u30C9\u4E2D\u3002\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044... +ExtractedContentPanel.setMarkup.panelTxt=\u30C6\u30AD\u30B9\u30C8\u30ED\u30FC\u30C9\u4E2D...\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002 ExtractedContentViewer.toString=\u62BD\u51FA\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8 -ExtractedContentViewer.toolTip=\u30D5\u30A1\u30A4\u30EB\u3084\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u7D50\u679C\u304B\u3089\u62BD\u51FA\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8\u3092\u8868\u793A\u3002\u3053\u306E\u30D3\u30E5\u30FC\u30A2\u3092\u30A2\u30AF\u30C6\u30A3\u30D9\u30A4\u30C8\u3059\u308B\u306B\u306F\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u30D5\u30A1\u30A4\u30EB\u4E0A\u3067\u5B9F\u884C\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -ExtractedContentViewer.getTitle=\u30C6\u30AD\u30B9\u30C8 +ExtractedContentViewer.toolTip=\u30D5\u30A1\u30A4\u30EB\u3084\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u7D50\u679C\u304B\u3089\u62BD\u51FA\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8\u3092\u8868\u793A\u3002\u3053\u306E\u30D3\u30E5\u30FC\u30A2\u3092\u6709\u52B9\u5316\u3059\u308B\u306B\u306F\u3001\u30D5\u30A1\u30A4\u30EB\u306B\u5BFE\u3057\u3066\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u5B9F\u884C\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +ExtractedContentViewer.getTitle=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8 ExtractedContentViewer.getSolrContent.knownFileMsg=

{0}\u306F\u65E2\u77E5\u30D5\u30A1\u30A4\u30EB\u3067\u3059\uFF08MDS\u30CF\u30C3\u30B7\u30E5\u306B\u57FA\u3065\u304F\u3068\uFF09\u3002\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u30C6\u30AD\u30B9\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002

-ExtractedContentViewer.getSolrContent.noTxtYetMsg=

{0}\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u30C6\u30AD\u30B9\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
\u30C6\u30AD\u30B9\u30C8\u304C\u7121\u3044\u304B\u3001\u307E\u3060\u89E3\u6790\u3055\u308C\u3066\u3044\u306A\u3044\u304B\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u304C\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u4E2D\u306B\u6709\u52B9\u5316\u3055\u308C\u3066\u3044\u306A\u304B\u3063\u305F\u306E\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002

-HighlightedMatchesSource.getMarkup.noMatchMsg=
\u3053\u306E\u30DA\u30FC\u30B8\u4E0A\u3067\u30AD\u30FC\u30EF\u30FC\u30C9\u304C\u30D2\u30C3\u30C8\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002
\u30AD\u30FC\u30EF\u30FC\u30C9\u304C\u30D5\u30A1\u30A4\u30EB\u540D\u306B\u542B\u307E\u308C\u3066\u3044\u305F\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002
\u5225\u306E\u30DA\u30FC\u30B8\u306B\u79FB\u52D5\u3059\u308B\u304B\u3001\u30AA\u30EA\u30B8\u30CA\u30EB\u30C6\u30AD\u30B9\u30C8\u3092\u8868\u793A\u3059\u308B\u306E\u306B\u3001\u300C\u62BD\u51FA\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8\u300D\u3092\u9078\u629E\u3057\u3066\u4E0B\u3055\u3044\u3002
+ExtractedContentViewer.getSolrContent.noTxtYetMsg=

{0}\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u30C6\u30AD\u30B9\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
\u30C6\u30AD\u30B9\u30C8\u304C\u7121\u3044\u304B\u3001\u307E\u3060\u89E3\u6790\u3055\u308C\u3066\u3044\u306A\u3044\u304B\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u304C\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u4E2D\u306B\u6709\u52B9\u5316\u3055\u308C\u3066\u3044\u306A\u304B\u3063\u305F\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002

+HighlightedMatchesSource.getMarkup.noMatchMsg=
\u3053\u306E\u30DA\u30FC\u30B8\u4E0A\u3067\u30AD\u30FC\u30EF\u30FC\u30C9\u304C\u30D2\u30C3\u30C8\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002
\u30AD\u30FC\u30EF\u30FC\u30C9\u304C\u30D5\u30A1\u30A4\u30EB\u540D\u306B\u542B\u307E\u308C\u3066\u3044\u305F\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002
\u30D2\u30C3\u30C8\u3057\u305F\u7D50\u679C\u3092\u898B\u308B\u306E\u306B\u5225\u306E\u30DA\u30FC\u30B8\u306B\u79FB\u52D5\u3059\u308B\u304B\u3001\u30AA\u30EA\u30B8\u30CA\u30EB\u30C6\u30AD\u30B9\u30C8\u3092\u8868\u793A\u3059\u308B\u306E\u306B\u3001\u300C\u62BD\u51FA\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8\u300D\u3092\u9078\u629E\u3057\u3066\u4E0B\u3055\u3044\u3002
HighlightedMatchesSource.toString=\u691C\u7D22\u7D50\u679C -Installer.reportPortError=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D0\u30FC\u30DD\u30FC\u30C8 {0} \u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3057\u3066\u3044\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u304C {1} \u3092\u30D6\u30ED\u30C3\u30AF\u3057\u3066\u3044\u306A\u3044\u304B\u78BA\u8A8D\u3057\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30E6\u30FC\u30B6\u30FC\u30D5\u30A9\u30EB\u30C0\u30FC\u5185\u306E {3} \u306E {2} \u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u30D5\u30A1\u30A4\u30EB\u306E\u5909\u66F4\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3082\u3057\u4ED6\u306E\u51E6\u7406\u304C\u554F\u984C\u306E\u539F\u56E0\u3067\u3042\u308C\u3070\u3001\u30B7\u30B9\u30C6\u30E0\u3092\u518D\u8D77\u52D5\u3057\u3066\u4E0B\u3055\u3044\u3002 -Installer.reportStopPortError=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D0\u30FC\u30B9\u30C8\u30C3\u30D7\u30DD\u30FC\u30C8 {0} \u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30E6\u30FC\u30B6\u30D5\u30A9\u30EB\u30C0\u30FC\u5185\u306E {1} \u306E {2} \u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u30D5\u30A1\u30A4\u30EB\u306E\u5909\u66F4\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +Installer.reportPortError=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D0\u30FC\u30DD\u30FC\u30C8 {0} \u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3057\u3066\u3044\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u304C {1} \u3092\u30D6\u30ED\u30C3\u30AF\u3057\u3066\u3044\u306A\u3044\u304B\u78BA\u8A8D\u3057\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30E6\u30FC\u30B6\u30FC\u30D5\u30A9\u30EB\u30C0\u30FC\u5185\u306E{3}\u30D7\u30ED\u30D1\u30C6\u30A3\u30D5\u30A1\u30A4\u30EB\u306E{2}\u3092\u5909\u66F4\u3059\u308B\u691C\u8A0E\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3082\u3057\u4ED6\u306E\u51E6\u7406\u304C\u554F\u984C\u306E\u539F\u56E0\u3067\u3042\u308C\u3070\u3001\u30B7\u30B9\u30C6\u30E0\u3092\u518D\u8D77\u52D5\u3057\u3066\u4E0B\u3055\u3044\u3002 +Installer.reportStopPortError=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D0\u30FC\u30B9\u30C8\u30C3\u30D7\u30DD\u30FC\u30C8 {0} \u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30E6\u30FC\u30B6\u30FC\u30D5\u30A9\u30EB\u30C0\u30FC\u5185\u306E{3}\u30D7\u30ED\u30D1\u30C6\u30A3\u30D5\u30A1\u30A4\u30EB\u306E{2}\u3092\u5909\u66F4\u3059\u308B\u691C\u8A0E\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002 Installer.errorInitKsmMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u8D77\u52D5\u30A8\u30E9\u30FC -Installer.reportInitError=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D0\u30FC\u30DD\u30FC\u30C8 {0} \u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3057\u3066\u3044\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u304C {1} \u3092\u30D6\u30ED\u30C3\u30AF\u3057\u3066\u3044\u306A\u3044\u304B\u78BA\u8A8D\u3057\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30E6\u30FC\u30B6\u30FC\u30D5\u30A9\u30EB\u30C0\u30FC\u5185\u306E {2} \u306E {3} \u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u30D5\u30A1\u30A4\u30EB\u306E\u5909\u66F4\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3082\u3057\u4ED6\u306E\u51E6\u7406\u304C\u554F\u984C\u306E\u539F\u56E0\u3067\u3042\u308C\u3070\u3001\u30B7\u30B9\u30C6\u30E0\u3092\u518D\u8D77\u52D5\u3057\u3066\u4E0B\u3055\u3044\u3002 +Installer.reportInitError=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D0\u30FC\u30DD\u30FC\u30C8 {0} \u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3057\u3066\u3044\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u304C {1} \u3092\u30D6\u30ED\u30C3\u30AF\u3057\u3066\u3044\u306A\u3044\u304B\u78BA\u8A8D\u3057\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30E6\u30FC\u30B6\u30FC\u30D5\u30A9\u30EB\u30C0\u30FC\u5185\u306E{3}\u30D7\u30ED\u30D1\u30C6\u30A3\u30D5\u30A1\u30A4\u30EB\u306E{2}\u3092\u5909\u66F4\u3059\u308B\u691C\u8A0E\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3082\u3057\u4ED6\u306E\u51E6\u7406\u304C\u554F\u984C\u306E\u539F\u56E0\u3067\u3042\u308C\u3070\u3001\u30B7\u30B9\u30C6\u30E0\u3092\u518D\u8D77\u52D5\u3057\u3066\u4E0B\u3055\u3044\u3002 KeywordSearchConfigurationPanel.customizeComponents.title=\u30A2\u30C9\u30D0\u30F3\u30B9\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u8A2D\u5B9A KeywordSearchConfigurationPanel.customizeComponents.listTabTitle=\u30EA\u30B9\u30C8 KeywordSearchConfigurationPanel.customizeComponents.stringExtTitle=\u30B9\u30C8\u30EA\u30F3\u30B0\u62BD\u51FA @@ -73,8 +73,8 @@ KeywordSearchConfigurationPanel1.customizeComponents.noOwDefaultMsg=\u30C7\u30D5 KeywordSearchConfigurationPanel1.customizeComponents.kwListExistMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8 <{0}> \u306F\u65E2\u306B\u5B58\u5728\u3057\u307E\u3059\u3002\u4E0A\u66F8\u304D\u3057\u307E\u3059\u304B\uFF1F KeywordSearchConfigurationPanel1.customizeComponents.kwListSavedMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8 <{0}> \u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F KeywordSearchEditListPanel.customizeComponents.kwReToolTip=\u30AD\u30FC\u30EF\u30FC\u30C9\u306F\u6B63\u7FA9\u8868\u73FE\u3067\u3059 -KeywordSearchEditListPanel.customizeComponents.addWordToolTip=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30EA\u30B9\u30C8\u306B\u5358\u8A9E\u3092\u8FFD\u52A0 -KeywordSearchEditListPanel.customizeComponents.enterNewWordToolTip=\u65B0\u898F\u5358\u8A9E\u3084\u4E00\u6B63\u898F\u8868\u73FE\u3092\u5165\u529B +KeywordSearchEditListPanel.customizeComponents.addWordToolTip=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30EA\u30B9\u30C8\u306B\u65B0\u3057\u3044\u5358\u8A9E\u3092\u8FFD\u52A0 +KeywordSearchEditListPanel.customizeComponents.enterNewWordToolTip=\u691C\u7D22\u3059\u308B\u306E\u306B\u65B0\u898F\u5358\u8A9E\u307E\u305F\u306F\u6B63\u898F\u8868\u73FE\u3092\u5165\u529B KeywordSearchEditListPanel.customizeComponents.exportToFile=\u65E2\u5B58\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u3092\u30D5\u30A1\u30A4\u30EB\u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8 KeywordSearchEditListPanel.customizeComponents.saveCurrentWIthNewNameToolTip=\u65E2\u5B58\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u306B\u540D\u524D\u3092\u4ED8\u3051\u3066\u4FDD\u5B58 KeywordSearchEditListPanel.customizeComponents.removeSelectedMsg=\u9078\u629E\u3057\u305F\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u30EA\u30B9\u30C8\u304B\u3089\u524A\u9664 @@ -89,13 +89,13 @@ KeywordSearchEditListPanel.exportButtonActionPerformed.kwListExportedMsg=\u30A8\ KeywordSearchEditListPanel.kwColName=\u30AD\u30FC\u30EF\u30FC\u30C9 KeywordSearchEditListPanel.exportButtonActionPerformed.regExColName=\u6B63\u898F\u8868\u73FE KeywordSearchFilterNode.getFileActions.openExternViewActLbl=\u5916\u90E8\u30D3\u30E5\u30FC\u30A2\u3067\u958B\u304F -KeywordSearchFilterNode.getFileActions.searchSameMd5=\u540C\u4E00\u306EMD5\u30CF\u30C3\u30B7\u30E5\u3092\u6301\u3064\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22 +KeywordSearchFilterNode.getFileActions.searchSameMd5=\u540C\u3058MD5\u30CF\u30C3\u30B7\u30E5\u3092\u6301\u3064\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22 KeywordSearchFilterNode.getFileActions.viewInNewWinActionLbl=\u65B0\u3057\u3044\u30A6\u30A3\u30F3\u30C9\u30A6\u3067\u8868\u793A -KeywordSearchIngestModule.init.badInitMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30B5\u30FC\u30D0\u30FC\u304C\u6B63\u3057\u304F\u8D77\u52D5\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u5B9F\u884C\u3067\u304D\u307E\u305B\u3093\u3002 -KeywordSearchIngestModule.init.tryStopSolrMsg={0}
\u53E4\u3044java Solr\u51E6\u7406\u3092\uFF08\u5B58\u5728\u3059\u308C\u3070\uFF09\u505C\u6B62\u3057\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +KeywordSearchIngestModule.init.badInitMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30B5\u30FC\u30D0\u30FC\u304C\u6B63\u3057\u304F\u8D77\u52D5\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u5B9F\u884C\u3067\u304D\u307E\u305B\u3093\u3002 +KeywordSearchIngestModule.init.tryStopSolrMsg={0}
\u53E4\u3044java Solr\u51E6\u7406\u3092\uFF08\u3082\u3057\u5B58\u5728\u3059\u308C\u3070\uFF09\u505C\u6B62\u3057\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 KeywordSearchIngestModule.init.noKwInLstMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u306B\u30AD\u30FC\u30EF\u30FC\u30C9\u304C\u3042\u308A\u307E\u305B\u3093\u3002 -KeywordSearchIngestModule.init.onlyIdxKwSkipMsg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3060\u3051\u5B9F\u884C\u3055\u308C\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u306F\u30B9\u30AD\u30C3\u30D7\u3055\u308C\u307E\u3059\uFF08\u300C\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8 - \u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u306B\u8FFD\u52A0\u300D\u3092\u4F7F\u7528\u3057\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u3092\u8FFD\u52A0\u3059\u308B\u306E\u306F\u53EF\u80FD\u3067\u3059 -KeywordSearchIngestModule.postIndexSummary.knowFileHeaderLbl=\u65E2\u77E5\u30BF\u30A4\u30D7\u306E\u30D5\u30A1\u30A4\u30EB +KeywordSearchIngestModule.init.onlyIdxKwSkipMsg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3060\u3051\u5B9F\u884C\u3055\u308C\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u306F\u30B9\u30AD\u30C3\u30D7\u3055\u308C\u307E\u3059\u3002\uFF08\u300C\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8 - \u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u306B\u8FFD\u52A0\u300D\u3092\u4F7F\u7528\u3057\u3001\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u3092\u8FFD\u52A0\u3059\u308B\u306E\u306F\u53EF\u80FD\u3067\u3059\u3002\uFF09 +KeywordSearchIngestModule.postIndexSummary.knowFileHeaderLbl=\u65E2\u77E5\u30BF\u30A4\u30D7\u304C\u3042\u308B\u30D5\u30A1\u30A4\u30EB KeywordSearchIngestModule.postIndexSummary.fileGenStringsHead=\u4E00\u822C\u7684\u306A\u30B9\u30C8\u30EA\u30F3\u30B0\u304C\u62BD\u51FA\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB KeywordSearchIngestModule.postIndexSummary.mdOnlyLbl=\u30E1\u30BF\u30C7\u30FC\u30BF\u306E\u307F\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u307E\u3057\u305F KeywordSearchIngestModule.postIndexSummary.idxErrLbl=\u30A8\u30E9\u30FC\uFF08\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30A8\u30E9\u30FC\uFF09 @@ -103,9 +103,9 @@ KeywordSearchIngestModule.postIndexSummary.errTxtLbl=\u30A8\u30E9\u30FC\uFF08\u3 KeywordSearchIngestModule.postIndexSummary.errIoLbl=\u30A8\u30E9\u30FC\uFF08I/O\uFF09 KeywordSearchIngestModule.postIndexSummary.kwIdxResultsLbl=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u7D50\u679C KeywordSearchIngestModule.postIndexSummary.kwIdxErrsTitle=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u30A8\u30E9\u30FC -KeywordSearchIngestModule.postIndexSummary.kwIdxErrMsgFiles=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D3\u30B9\u4E2D\u306B{0}\u30D5\u30A1\u30A4\u30EB\u306E\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +KeywordSearchIngestModule.postIndexSummary.kwIdxErrMsgFiles=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D3\u30B9\u304C{0}\u30D5\u30A1\u30A4\u30EB\u3092\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 KeywordSearchIngestModule.postIndexSummary.kwIdxWarnMsgTitle=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u8B66\u544A -KeywordSearchIngestModule.postIndexSummary.idxErrReadFilesMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D3\u30B9\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u306E\u8AAD\u307F\u8FBC\u307F\u3084\u30C6\u30AD\u30B9\u30C8\u62BD\u51FA\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u539F\u56E0\u306F\u7834\u640D\u3057\u305F\u30E1\u30C7\u30A3\u30A2\u3084\u30D5\u30A1\u30A4\u30EB\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchIngestModule.postIndexSummary.idxErrReadFilesMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30B5\u30FC\u30D3\u30B9\u304C\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u8FBC\u3080\u969B\u3084\u30C6\u30AD\u30B9\u30C8\u3092\u62BD\u51FA\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u539F\u56E0\u306F\u7834\u640D\u3057\u305F\u30E1\u30C7\u30A3\u30A2\u3084\u30D5\u30A1\u30A4\u30EB\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 KeywordSearchListsViewerPanel.initIngest.addIngestTitle=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u306B\u8FFD\u52A0 KeywordSearchListsViewerPanel.initIngest.addIngestMsg=\u8FFD\u52A0\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u3092\u9078\u629E\u3067\u304D\u307E\u3059
\u305D\u3057\u3066\u5B9F\u884C\u4E2D\u306E\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u306B\u8FFD\u52A0\u3067\u304D\u307E\u3059
\u6B21\u56DE\u306E\u30D5\u30A1\u30A4\u30EB\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u518D\u69CB\u7BC9\u306E\u3068\u304D\u306B\u9078\u629E\u3055\u308C\u305F\u30EA\u30B9\u30C8\u3082\u691C\u7D22\u3055\u308C\u307E\u3059\u3002 KeywordSearchListsViewerPanel.initIngest.searchIngestTitle=\u691C\u7D22 @@ -124,7 +124,7 @@ KeywordSearch.cancelImportMsg=\u30A4\u30F3\u30DD\u30FC\u30C8\u3092\u30AD\u30E3\u KeywordSearch.overwriteListPrompt=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8 <{0}> \u306F\u30ED\u30FC\u30AB\u30EB\u306B\u65E2\u306B\u5B58\u5728\u3057\u307E\u3059\u3002\u4E0A\u66F8\u304D\u3057\u307E\u3059\u304B\uFF1F KeywordSearch.importOwConflict=\u30EA\u30B9\u30C8\u30A4\u30F3\u30DD\u30FC\u30C8\u306E\u554F\u984C KeywordSearch.kwListFailImportMsg=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u304C\u30A4\u30F3\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093 -KeywordSearchListsManagementPanel.fileExtensionFilterLbl=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u30D5\u30A1\u30A4\u30EB +KeywordSearchListsManagementPanel.fileExtensionFilterLbl=Autopsy\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u30D5\u30A1\u30A4\u30EB(xml) KeywordSearch.listImportFeatureTitle=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u30A4\u30F3\u30DD\u30FC\u30C8 KeywordSearchIngestModule.moduleName=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22 DropdownSearchPanel.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629E @@ -154,21 +154,21 @@ HighlightedMatchesSource.nextPage.exception.msg=\u6B21\u306E\u30DA\u30FC\u30B8\u HighlightedMatchesSource.previousPage.exception.msg=\u524D\u306E\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u305B\u3093\u3002 HighlightedMatchesSource.nextItem.exception.msg=\u6B21\u306E\u30A2\u30A4\u30C6\u30E0\u304C\u3042\u308A\u307E\u305B\u3093\u3002 HighlightedMatchesSource.previousItem.exception.msg=\u524D\u306E\u30A2\u30A4\u30C6\u30E0\u304C\u3042\u308A\u307E\u305B\u3093\u3002 -Ingester.ingest.exception.unknownImgId.msg=\u4E0B\u8A18\u306E\u30D5\u30A1\u30A4\u30EB\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3092\u30B9\u30AD\u30C3\u30D7\u3057\u3066\u3044\u307E\u3059\u3002\u4E0D\u660E\u306A\u30A4\u30E1\u30FC\u30B8ID\uFF1A{0} +Ingester.ingest.exception.unknownImgId.msg=\u6B21\u306E\u30D5\u30A1\u30A4\u30EB\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3092\u30B9\u30AD\u30C3\u30D7\u3057\u3066\u3044\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\uFF1A{0}\u306E\u4E0D\u660E\u306A\u30A4\u30E1\u30FC\u30B8ID Ingester.ingest.exception.cantReadStream.msg=\u30B3\u30F3\u30C6\u30F3\u30C4\u30B9\u30C8\u30EA\u30FC\u30E0\u3092\u8AAD\u307F\u53D6\u308C\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} Ingester.ingest.exception.err.msg=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u4E2D\u306E\u30A8\u30E9\u30FC\uFF1A{0} -Ingester.ingestExtract.exception.solrTimeout.msg=\u4E0B\u8A18\u306EID\u306B\u5BFE\u3059\u308B\u3001Solr\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u30EA\u30AF\u30A8\u30B9\u30C8\u306F\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8\u3057\u307E\u3057\u305F\uFF1A{0}, \u540D\u524D\: {1} +Ingester.ingestExtract.exception.solrTimeout.msg=\u6B21\u306EID\u306B\u5BFE\u3059\u308B\u3001Solr\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u30EA\u30AF\u30A8\u30B9\u30C8\u306F\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8\u3057\u307E\u3057\u305F\uFF1A{0}, \u540D\u524D\: {1} Ingester.ingestExtract.exception.probPostToSolr.msg=Solr\u306B\u30B3\u30F3\u30C6\u30F3\u30C4\u3092\u30DD\u30B9\u30C8\u3059\u308B\u306E\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002ID\uFF1A{0}, \u540D\u524D\: {1} Ingester.UpReqestTask.run.exception.sorlNotAvail.msg=Solr\u30B3\u30A2\u304C\u5229\u7528\u4E0D\u53EF\u3067\u3059\u3002\u30B3\u30F3\u30C6\u30F3\u30C4\u3092\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3067\u304D\u307E\u305B\u3093\u3002 Ingester.UpRequestTask.run.exception.probReadFile.msg=\u30D5\u30A1\u30A4\u30EB\u306E\u8AAD\u307F\u53D6\u308A\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Ingester.UpRequestTask.run.exception.solrProb.msg=Solr\u306B\u554F\u984C\u304C\u3042\u308A\u307E\u3059 -Ingester.UpRequestTask.run.exception.probPostToSolr.msg=\u30D5\u30A1\u30A4\u30EB\u30B3\u30F3\u30C6\u30F3\u30C4\u3092Solr\u306B\u30DD\u30B9\u30C8\u3059\u308B\u306E\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002SolrException\u30A8\u30E9\u30FC\u30B3\u30FC\u30C9\uFF1A{0} +Ingester.UpRequestTask.run.exception.probPostToSolr.msg=\u30D5\u30A1\u30A4\u30EB\u30B3\u30F3\u30C6\u30F3\u30C4\u3092Solr\u306B\u8F09\u305B\u308B\u306E\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002SolrException\u30A8\u30E9\u30FC\u30B3\u30FC\u30C9\uFF1A{0} Ingester.FscContentStream.getSrcInfo=\u30D5\u30A1\u30A4\u30EB\uFF1A{0} Ingester.FscContentStream.getReader=\u307E\u3060\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 Ingester.NullContentStream.getSrcInfo.text=\u30D5\u30A1\u30A4\u30EB\uFF1A{0} Ingester.NullContentStream.getReader=\u307E\u3060\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 KeywordSearch.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC -KeywordSearch.fireNumIdxFileChg.moduleErr.msg=KeywordSearch\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearch.fireNumIdxFileChg.moduleErr.msg=KeywordSearch\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 KeywordSearchIngestModule.init.exception.errConnToSolr.msg=Solr\u30B5\u30FC\u30D0\u3078\u63A5\u7D9A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} KeywordSearchListsEncase.save.exception.msg=\u307E\u3060\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 KeywordSearchListsEncase.save2.exception.msg=\u307E\u3060\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 @@ -176,48 +176,47 @@ KeywordSearchListsEncase.encaseMetaType.exception.msg=\u30B5\u30DD\u30FC\u30C8\u KeywordSearchListsManagementPanel.getColName.text=\u540D\u524D KeywordSearchListsManagementPanel.setValueAt.exception.msg=\u30BB\u30EB\u306E\u7DE8\u96C6\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093 KeywordSearchOptionsPanelController.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC -KeywordSearchOptionsPanelController.moduleErr.msg1=KeywordSearchOptionsPanelController\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 -KeywordSearchOptionsPanelController.moduleErr.msg2=KeywordSearchOptionsPanelController\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchOptionsPanelController.moduleErr.msg1=KeywordSearchOptionsPanelController\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchOptionsPanelController.moduleErr.msg2=KeywordSearchOptionsPanelController\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 KeywordSearchQueryManager.pathText.text=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22 KeywordSearchResultFactory.progress.saving=\u7D50\u679C\u3092\u4FDD\u5B58\u4E2D\uFF1A{0} KeywordSearchSettings.moduleName.text=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22 KeywordSearchSettings.properties_options.text={0}_\u30AA\u30D7\u30B7\u30E7\u30F3 KeywordSearchSettings.propertiesNSRL.text={0}_NSRL KeywordSearchSettings.propertiesScripts.text={0}_\u30B9\u30AF\u30EA\u30D7\u30C8 -NoOpenCoreException.err.noOpenSorlCore.msg=\u73FE\u5728\u958B\u3044\u3066\u3044\u308BSolr\u30B3\u30A2\u306F\u3042\u308A\u307E\u305B\u3093\u3002 +NoOpenCoreException.err.noOpenSorlCore.msg=\u73FE\u5728\u958B\u3044\u3066\u3044\u308BSolr\u30B3\u30A2\u304C\u3042\u308A\u307E\u305B\u3093\u3002 Server.start.exception.cantStartSolr.msg=Solr\u30B5\u30FC\u30D0\u30D7\u30ED\u30BB\u30B9\u3092\u958B\u59CB\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F Server.start.exception.cantStartSolr.msg2=Solr\u30B5\u30FC\u30D0\u30D7\u30ED\u30BB\u30B9\u3092\u958B\u59CB\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F Server.isRunning.exception.errCheckSolrRunning.msg=Solr\u30B5\u30FC\u30D0\u306E\u7A3C\u50CD\u72B6\u614B\u3092\u78BA\u8A8D\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Server.isRunning.exception.errCheckSolrRunning.msg2=Solr\u30B5\u30FC\u30D0\u306E\u7A3C\u50CD\u72B6\u614B\u3092\u78BA\u8A8D\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Server.openCore.exception.alreadyOpen.msg=\u3059\u3067\u306B\u958B\u3044\u3066\u3044\u308B\u30B3\u30A2\u3067\u3059\uFF01\u307E\u305A\u660E\u793A\u7684\u306B\u30B3\u30A2\u3092\u9589\u3058\u3066\u4E0B\u3055\u3044\u3002 +Server.isRunning.exception.errCheckSolrRunning.msg2=Solr\u30B5\u30FC\u30D0\u304C\u7A3C\u50CD\u3057\u3066\u3044\u308B\u304B\u78BA\u8A8D\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Server.openCore.exception.alreadyOpen.msg=\u3059\u3067\u306B\u958B\u3044\u3066\u3044\u308B\u30B3\u30A2\u3067\u3059\uFF01\u307E\u305A\u78BA\u5B9F\u306B\u30B3\u30A2\u3092\u9589\u3058\u3066\u4E0B\u3055\u3044\u3002 Server.queryNumIdxFiles.exception.msg=\u8907\u6570\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u306B\u5BFE\u3057\u3066\u306E\u30AF\u30A8\u30EA\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Server.queryNumIdxChunks.exception.msg=\u8907\u6570\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u305F\u30C1\u30E3\u30F3\u30AF\u306B\u5BFE\u3057\u3066\u306E\u30AF\u30A8\u30EA\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Server.queryNumIdxDocs.exception.msg=\u8907\u6570\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306B\u5BFE\u3057\u3066\u306E\u30AF\u30A8\u30EA\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Server.queryIsIdxd.exception.msg=\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u3055\u308C\u305F\u304B\u78BA\u8A8D\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Server.queryNumFileChunks.exception.msg=\u30D5\u30A1\u30A4\u30EB\u30C1\u30E3\u30F3\u30AF\u306E\u6570\u3092\u78BA\u8A8D\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -Server.query.exception.msg=\u30AF\u30A8\u30EA\u306E\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} -Server.query2.exception.msg=\u30AF\u30A8\u30EA\u306E\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} -Server.queryTerms.exception.msg=Terms\u30AF\u30A8\u30EA\u306E\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Server.openCore.exception.msg=\u30B3\u30A2\u3092\u958B\u304F\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u3057\u307E\u3057\u305F\u304C\u3001\u30B5\u30FC\u30D0\u304C\u307E\u3060\u7A3C\u50CD\u3057\u3066\u3044\u307E\u305B\u3093\u3002 -Server.openCore.exception.cantOpen.msg=\u30B3\u30A2\u3092\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F -Server.openCore.exception.cantOpen.msg2=\u30B3\u30A2\u3092\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F +Server.query.exception.msg=\u30AF\u30A8\u30EA\u3092\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF1A{0} +Server.query2.exception.msg=\u30AF\u30A8\u30EA\uFF1A{0}\u3092\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Server.queryTerms.exception.msg=Terms\u30AF\u30A8\u30EA\: {0}\u3092\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Server.openCore.exception.msg=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30B5\u30FC\u30D3\u30B9\u304C\u307E\u3060\u7A3C\u50CD\u3057\u3066\u3044\u307E\u305B\u3093 +Server.openCore.exception.cantOpen.msg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u3092\u4F5C\u6210\u307E\u305F\u306F\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F Server.request.exception.exception.msg=Solr\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u767A\u884C\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F Server.commit.exception.msg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u3092\u30B3\u30DF\u30C3\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F -Server.addDoc.exception.msg=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30CF\u30F3\u30C9\u30E9\u30FC\u3092\u4F7F\u7528\u3057\u307E\u3057\u305F\u304C\u3001\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u4E0B\u8A18\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} +Server.addDoc.exception.msg=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30CF\u30F3\u30C9\u30E9\u30FC\u3092\u4F7F\u7528\u3057\u307E\u3057\u305F\u304C\u3001\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u6B21\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} Server.close.exception.msg=\u30B3\u30A2\u3092\u9589\u3058\u308C\u307E\u305B\u3093 Server.close.exception.msg2=\u30B3\u30A2\u3092\u9589\u3058\u308C\u307E\u305B\u3093 Server.solrServerNoPortException.msg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u5316\u306B\u4F7F\u7528\u3057\u3066\u3044\u308B\u30B5\u30FC\u30D0\u306F\u30DD\u30FC\u30C8{0}\u306B\u30D0\u30A4\u30F3\u30C9\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30DD\u30FC\u30C8\u306F\u4F7F\u7528\u4E0D\u53EF\u3067\u3059\u3002\u30C7\u30D5\u30A9\u30EB\u30C8{1}\u30DD\u30FC\u30C8\u306E\u5909\u66F4\u3092\u691C\u8A0E\u3057\u3066\u4E0B\u3055\u3044\u3002 -KeywordSearchIngestModule.doInBackGround.displayName=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22 +KeywordSearchIngestModule.doInBackGround.displayName=\u5B9A\u671F\u7684\u306A\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22 KeywordSearchIngestModule.doInBackGround.finalizeMsg=- \u6700\u7D42\u51E6\u7406\u4E2D KeywordSearchIngestModule.doInBackGround.pendingMsg=\uFF08\u30DA\u30F3\u30C7\u30A3\u30F3\u30B0\uFF09 SearchRunner.doInBackGround.cancelMsg=\uFF08\u30AD\u30E3\u30F3\u30BB\u30EB\u4E2D\u2026\uFF09 -Server.addDoc.exception.msg2=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30CF\u30F3\u30C9\u30E9\u30FC\u3092\u4F7F\u7528\u3057\u307E\u3057\u305F\u304C\u3001\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u4E0B\u8A18\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} +Server.addDoc.exception.msg2=\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30CF\u30F3\u30C9\u30E9\u30FC\u3092\u4F7F\u7528\u3057\u307E\u3057\u305F\u304C\u3001\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u306B\u6B21\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{0} ExtractedContentViewer.getSolrContent.txtBodyItal={0} Keyword.toString.text=Keyword'{'query\={0}, isLiteral\={1}, keywordType\={2}'}' KeywordSearchJobSettingsPanel.keywordSearchEncodings.text=- KeywordSearchJobSettingsPanel.languagesValLabel.text=- KeywordSearchJobSettingsPanel.encodingsLabel.text=\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\uFF1A -KeywordSearchJobSettingsPanel.titleLabel.text=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u4E2D\u306B\u6709\u52B9\u306A\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u3092\u9078\u629E\uFF1A +KeywordSearchJobSettingsPanel.titleLabel.text=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u6642\u306B\u6709\u52B9\u306B\u3059\u308B\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u3092\u9078\u629E\uFF1A KeywordSearchJobSettingsPanel.languagesLabel.toolTipText=\u4E0D\u660E\u306A\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7\u304B\u3089\u306E\u30B9\u30C8\u30EA\u30F3\u30B0\u62BD\u51FA\u3092\u6709\u52B9\u306B\u3057\u305F\u30B9\u30AF\u30EA\u30D7\u30C8\u3002\u30A2\u30C9\u30D0\u30F3\u30B9\u8A2D\u5B9A\u304B\u3089\u5909\u66F4\u304C\u53EF\u80FD\u3067\u3059\u3002 KeywordSearchJobSettingsPanel.languagesLabel.text=\u4E0D\u660E\u306A\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7\u304B\u3089\u306E\u30B9\u30C8\u30EA\u30F3\u30B0\u62BD\u51FA\u3092\u6709\u52B9\u306B\u3057\u305F\u30B9\u30AF\u30EA\u30D7\u30C8\uFF1A KeywordSearchGlobalLanguageSettingsPanel.enableUTF8Checkbox.text=UTF8\u30C6\u30AD\u30B9\u30C8\u62BD\u51FA\u306E\u6709\u52B9\u5316 @@ -257,16 +256,16 @@ KeywordSearchIngestModule.listThLbl=\u30EA\u30B9\u30C8 KeywordSearchIngestModule.previewThLbl=\u30D7\u30EC\u30D3\u30E5\u30FC KeywordSearchIngestModule.regExpHitLbl=\u6B63\u898F\u8868\u73FE\u30D2\u30C3\u30C8\uFF1A KeywordSearchIngestModule.regExThLbl=\u6B63\u898F\u8868\u73FE -KeywordSearchListsAbstract.addList.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 -KeywordSearchListsAbstract.addList.errMsg2.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchListsAbstract.addList.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchListsAbstract.addList.errMsg2.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 KeywordSearchListsAbstract.moduleErr=\u30E2\u30B8\u30E5\u30FC\u30EB\u30A8\u30E9\u30FC KeywordSearchPanel.searchDropButton.text=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22 SearchRunner.updateTimer.title.text=SearchRunner\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u30BF\u30A4\u30DE\u30FC -KeywordSearchListsAbstract.deleteList.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 -KeywordSearchListsAbstract.saveList.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 -KeywordSearchListsAbstract.saveList.errMsg2.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 -KeywordSearchListsAbstract.writeLists.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 -KeywordSearchListsAbstract.writeLists.errMsg2.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchListsAbstract.deleteList.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchListsAbstract.saveList.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchListsAbstract.saveList.errMsg2.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchListsAbstract.writeLists.errMsg1.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 +KeywordSearchListsAbstract.writeLists.errMsg2.msg=KeywordSearchListsAbstract\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3092\u78BA\u8A8D\u4E2D\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u30A8\u30E9\u30FC\u3092\u8D77\u3053\u3057\u307E\u3057\u305F\u3002\u3069\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044\u3002\u4E00\u90E8\u306E\u30C7\u30FC\u30BF\u304C\u4E0D\u5B8C\u5168\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u3002 KeywordSearchListsManagementPanel.newKeywordListDescription=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8<{0}>\u306F\u8AAD\u307F\u53D6\u308A\u5C02\u7528\u30EA\u30B9\u30C8\u3068\u3057\u3066\u5B58\u5728\u3057\u307E\u3059\u3002\u30D7\u30ED\u30B0\u30E9\u30E0\u3092\u4F7F\u7528\u4E2D\u306E\u307F\u3053\u306E\u30EA\u30B9\u30C8\u3092\u7F6E\u304D\u63DB\u3048\u307E\u3059\u304B\uFF1F\uFF08\u3053\u306E\u5909\u66F4\u306F\u7D99\u7D9A\u3055\u308C\u307E\u305B\u3093\uFF09 KeywordSearchListsManagementPanel.newKeywordListDescription2=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8<{0}>\u306F\u65E2\u306B\u5B58\u5728\u3057\u307E\u3059\u3002\u7F6E\u304D\u63DB\u3048\u307E\u3059\u304B\uFF1F KeywordSearchModuleFactory.createFileIngestModule.exception.msg=\u8A2D\u5B9A\u3092\u884C\u3046\u70BA\u306E\u60F3\u5B9A\u3055\u308C\u308B\u5F15\u6570\u306Finstanceof KeywordSearchJobSettings @@ -274,3 +273,16 @@ KeywordSearchModuleFactory.getIngestJobSettingsPanel.exception.msg=\u8A2D\u5B9A\ SearchRunner.Searcher.done.err.msg=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u3092\u5B9F\u884C\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F KeywordSearchGlobalSearchSettingsPanel.timeRadioButton5.text=\u5B9A\u671F\u7684\u691C\u7D22\u7121\u3057 KeywordSearchGlobalSearchSettingsPanel.timeRadioButton5.toolTipText=\u5168\u4F53\u7684\u306B\u4E00\u756A\u901F\u3044\u3067\u3059\u304C\u3001\u51E6\u7406\u304C\u5B8C\u4E86\u3059\u308B\u307E\u3067\u7D50\u679C\u306F\u8868\u793A\u3055\u308C\u307E\u305B\u3093 +HighlightedMatchesSource.getMarkup.queryFailedMsg=
\u30AD\u30FC\u30EF\u30FC\u30C9\u306B\u30D2\u30C3\u30C8\u3057\u305F\u7D50\u679C\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002
Autopsy\u304CSolr\u30B5\u30FC\u30D0\u30FC\u306B\u63A5\u7D9A\u3067\u304D\u308B\u3053\u3068\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
\ +KeywordSearch.openCore.notification.msg=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u3092\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F +KeywordSearch.closeCore.notification.msg=\u30AD\u30FC\u30EF\u30FC\u30C9\u691C\u7D22\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u3092\u9589\u3058\u308B\u969B\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +KeywordSearchListsManagementPanel.fileExtensionFilterLb2=\u30AD\u30FC\u30EF\u30FC\u30C9\u30EA\u30B9\u30C8\u30D5\u30A1\u30A4\u30EB\u3092\u30A8\u30F3\u30B1\u30FC\u30B9\u3059\u308B(txt) +Server.connect.exception.msg=Solr\u30B5\u30FC\u30D0\u30FC\u3078\u306E\u63A5\u7D9A\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF1A +Server.openCore.exception.noIndexDir.msg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u307E\u305F\u306F\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +KeywordSearchIngestModule.startUp.noOpenCore.msg=\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u304C\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u307E\u305F\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\u3002 +KeywordSearchIngestModule.startUp.fileTypeDetectorInitializationException.msg=\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7\u30C7\u30A3\u30C6\u30AF\u30BF\u3092\u8D77\u52D5\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +SolrConnectionCheck.HostnameOrPort=hostname\u3084\u30DD\u30FC\u30C8\u756A\u53F7\u304C\u7121\u52B9\u3067\u3059\u3002 +SolrConnectionCheck.Hostname=hostname\u304C\u7121\u52B9\u3067\u3059\u3002 +SolrConnectionCheck.Port=\u30DD\u30FC\u30C8\u756A\u53F7\u304C\u7121\u52B9\u3067\u3059\u3002 +SolrConnectionCheck.MissingHostname=hostname\u304C\u6B20\u3051\u3066\u307E\u3059\u3002 +RawText.getText.error.msg=\u30C6\u30AD\u30B9\u30C8\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F diff --git a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle.properties b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle.properties index d48bb0de81..d86b71dec9 100644 --- a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle.properties +++ b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle.properties @@ -1,7 +1,7 @@ OpenIDE-Module-Display-Category=Ingest Module OpenIDE-Module-Long-Description=\ Recent Activity ingest module.\n\n\ - The module extracts useful information about the recent user activity on the disk image being ingested, such as:\n\n- Recently open documents,\n- Web acitivity (sites visited, stored cookies, bookmarked sites, search engine queries, file downloads),\n- Recently attached devices,\n- Installed programs.\n\n\ + The module extracts useful information about the recent user activity on the disk image being ingested, such as\:\n\n- Recently open documents,\n- Web acitivity (sites visited, stored cookies, bookmarked sites, search engine queries, file downloads),\n- Recently attached devices,\n- Installed programs.\n\n\ The module currently supports Windows only disk images. \n\ The plugin is also fully functional when deployed on Windows version of Autopsy. OpenIDE-Module-Name=RecentActivity diff --git a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle_ja.properties b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle_ja.properties index cbbcb03a7d..47af63c1ac 100644 --- a/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle_ja.properties +++ b/RecentActivity/src/org/sleuthkit/autopsy/recentactivity/Bundle_ja.properties @@ -1,89 +1,89 @@ OpenIDE-Module-Display-Category=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB OpenIDE-Module-Long-Description=\ \u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB\u3002\n\n\ - \u3053\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306F\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u4E2D\u306E\u30C7\u30A3\u30B9\u30AF\u30A4\u30E1\u30FC\u30B8\u306E\u6700\u8FD1\u306E\u30E6\u30FC\u30B6\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3\u306B\u95A2\u3057\u3066\u5F79\u7ACB\u3064\u60C5\u5831\u3092\u62BD\u51FA\u3057\u307E\u3059\u3002\u4F8B\u3048\u3070\uFF1A\n\n-\u6700\u8FD1\u958B\u3044\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3001\n-\u30A6\u30A7\u30D6\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3\uFF08\u8A2A\u308C\u305F\u30B5\u30A4\u30C8\u3001Cookie\u3001\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u3055\u308C\u305F\u30B5\u30A4\u30C8\u3001\u30B5\u30FC\u30C1\u30A8\u30F3\u30B8\u30F3\u30AF\u30A8\u30EA\u3001\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\uFF09\u3001\n-\u6700\u8FD1\u30A2\u30BF\u30C3\u30C1\u3055\u308C\u305F\u30C7\u30D0\u30A4\u30B9\u3001\n-\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u305F\u30D7\u30ED\u30B0\u30E9\u30E0\u3002\n\n\ + \u3053\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306F\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u4E2D\u306E\u30C7\u30A3\u30B9\u30AF\u30A4\u30E1\u30FC\u30B8\u304B\u3089\u6709\u7528\u306A\u6700\u8FD1\u306E\u30E6\u30FC\u30B6\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3\u3092\u62BD\u51FA\u3057\u307E\u3059\u3002\u4F8B\u3048\u3070\uFF1A\n\n-\u6700\u8FD1\u958B\u3044\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3001\n-\u30A6\u30A7\u30D6\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3\uFF08\u8A2A\u308C\u305F\u30B5\u30A4\u30C8\u3001\u4FDD\u5B58\u3055\u308C\u305FCookie\u3001\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u3055\u308C\u305F\u30B5\u30A4\u30C8\u3001\u30B5\u30FC\u30C1\u30A8\u30F3\u30B8\u30F3\u30AF\u30A8\u30EA\u3001\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\uFF09\u3001\n-\u6700\u8FD1\u63A5\u7D9A\u3057\u305F\u30C7\u30D0\u30A4\u30B9\u3001\n-\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u305F\u30D7\u30ED\u30B0\u30E9\u30E0\u3002\n\n\ \u3053\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306F\u73FE\u5728Windows\u306E\u30C7\u30A3\u30B9\u30AF\u30A4\u30E1\u30FC\u30B8\u3057\u304B\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002\n\ - \u30D7\u30E9\u30B0\u30A4\u30F3\u306FWindows\u7248\u306EAutopsy\u306B\u3066\u5229\u7528\u3059\u308B\u3068\u5B8C\u5168\u6A5F\u80FD\u3057\u307E\u3059\u3002 + \u30D7\u30E9\u30B0\u30A4\u30F3\u306FWindows\u7248\u306EAutopsy\u3092\u5229\u7528\u3059\u308B\u3068\u5168\u3066\u306E\u6A5F\u80FD\u304C\u4F7F\u3048\u307E\u3059\u3002 OpenIDE-Module-Name=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 OpenIDE-Module-Short-Description=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3\u30D5\u30A1\u30A4\u30F3\u30C0\u30FC\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB Chrome.moduleName=Chrome -Chrome.getHistory.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -Chrome.getHistory.errMsg.couldntFindAnyFiles=\u30A2\u30ED\u30B1\u30FC\u30B7\u30E7\u30F3\u3055\u308C\u305FChrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u306F\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 -Chrome.getHistory.errMsg.errAnalyzingFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getHistory.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Chrome.getHistory.errMsg.couldntFindAnyFiles=\u30A2\u30ED\u30B1\u30FC\u30B7\u30E7\u30F3\u3055\u308C\u305FChrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +Chrome.getHistory.errMsg.errAnalyzingFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F Chrome.parentModuleName=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 -Chrome.getBookmark.errMsg.errGettingFiles=Chrome\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -Chrome.getBookmark.errMsg.errAnalyzingFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Chrome.getBookmark.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Chrome.getBookmark.errMsg.errAnalyzingFile3={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Chrome.getBookmark.errMsg.errAnalyzingFile4={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Chrome.getCookie.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -Chrome.getCookie.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Chrome.getDownload.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -Chrome.getDownload.errMsg.errAnalyzeFiles1={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Chrome.getLogin.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -Chrome.getLogin.errMsg.errAnalyzingFiles={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getBookmark.errMsg.errGettingFiles=Chrome\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Chrome.getBookmark.errMsg.errAnalyzingFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getBookmark.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getBookmark.errMsg.errAnalyzingFile3={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getBookmark.errMsg.errAnalyzingFile4={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getCookie.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Chrome.getCookie.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getDownload.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Chrome.getDownload.errMsg.errAnalyzeFiles1={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +Chrome.getLogin.errMsg.errGettingFiles=Chrome\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Chrome.getLogin.errMsg.errAnalyzingFiles={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F Extract.dbConn.errMsg.failedToQueryDb={0}\:\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30AF\u30A8\u30EA\u5B9F\u884C\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002 ExtractIE.moduleName.text=Internet Explorer -ExtractIE.getBookmark.errMsg.errGettingBookmarks={0}\: Internet Explorer\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +ExtractIE.getBookmark.errMsg.errGettingBookmarks={0}\: Internet Explorer\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExtractIE.parentModuleName.noSpace=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 ExtractIE.parentModuleName=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 -ExtractIE.getURLFromIEBmkFile.errMsg={0}\:Internet Explorer\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB{1}\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -ExtractIE.getURLFromIEBmkFile.errMsg2={0}\:Internet Explorer\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB{1}\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -ExtractIE.getCookie.errMsg.errGettingFile={0}\:Internet Explorer cookie\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -ExtractIE.getCookie.errMsg.errReadingIECookie={0}\:Internet Explorer cookie{1}\u306E\u8AAD\u307F\u53D6\u308A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +ExtractIE.getURLFromIEBmkFile.errMsg={0}\:Internet Explorer\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB{1}\u3092\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractIE.getURLFromIEBmkFile.errMsg2={0}\:Internet Explorer\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB{1}\u3092\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractIE.getCookie.errMsg.errGettingFile={0}\:Internet Explorer\u306Ecookie\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +ExtractIE.getCookie.errMsg.errReadingIECookie={0}\:Internet Explorer\u306Ecookie{1}\u3092\u8AAD\u307F\u53D6\u308A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExtractIE.getHistory.errMsg.unableToGetHist={0}\:Internet Explorer\u5C65\u6B74\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\uFF1Apasco\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F -ExtractIE.getHistory.errMsg.errGettingHistFiles={0}\:Internet Explorer\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +ExtractIE.getHistory.errMsg.errGettingHistFiles={0}\:Internet Explorer\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExtractIE.getHistory.errMsg.noHistFiles=Internet Explorer\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 -ExtractIE.getHistory.errMsg.errWriteFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u66F8\u304D\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -ExtractIE.getHistory.errMsg.errProcHist={0}\: Internet Explorer\u5C65\u6B74\u306E\u51E6\u7406\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +ExtractIE.getHistory.errMsg.errWriteFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u66F8\u304D\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractIE.getHistory.errMsg.errProcHist={0}\: Internet Explorer\u5C65\u6B74\u3092\u51E6\u7406\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExtractIE.parsePascoOutput.errMsg.notFound={0}\:Pasco\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\uFF1A{1} -ExtractIE.parsePascoOutput.errMsg.errParsing={0}\:Internet Explorer\u5C65\u6B74\u30A8\u30F3\u30C8\u30EA{1}\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -ExtractIE.parsePascoOutput.errMsg.errParsingEntry={0}\: Internet Explorer\u5C65\u6B74\u30A8\u30F3\u30C8\u30EA\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +ExtractIE.parsePascoOutput.errMsg.errParsing={0}\:Internet Explorer\u5C65\u6B74\u30A8\u30F3\u30C8\u30EA{1}\u3092\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractIE.parsePascoOutput.errMsg.errParsingEntry={0}\: Internet Explorer\u5C65\u6B74\u30A8\u30F3\u30C8\u30EA\u3092\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ExtractRegistry.moduleName.text=\u30EC\u30B8\u30B9\u30C8\u30EA -ExtractRegistry.findRegFiles.errMsg.errReadingFile=\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB\uFF1A{0}\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -ExtractRegistry.analyzeRegFiles.errMsg.errWritingTemp={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractRegistry.findRegFiles.errMsg.errReadingFile=\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB\uFF1A{0}\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractRegistry.analyzeRegFiles.errMsg.errWritingTemp={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F ExtractRegistry.analyzeRegFiles.failedParsingResults={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB\u7D50\u679C\u306E\u30D1\u30FC\u30B9\u306B\u5931\u6557\u3057\u307E\u3057\u305F{1} ExtractRegistry.parentModuleName.noSpace=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 ExtractRegistry.programName=\u30EC\u30B8\u30B9\u30C8\u30EA\u30EA\u30C3\u30D1\u30FC -ExtractRegistry.analyzeRegFiles.errMsg.errReadingRegFile={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB - {1}\u306E\u8AAD\u307F\u53D6\u308A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ExtractRegistry.analyzeRegFiles.errMsg.errReadingRegFile={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB - {1}\u3092\u8AAD\u307F\u53D6\u308A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F ExtractRegistry.execRegRip.errMsg.failedAnalyzeRegFile={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB\u306E\u89E3\u6790\u306B\u5931\u6557\u3057\u307E\u3057\u305F ExtractRegistry.execRegRip.errMsg.failedAnalyzeRegFile2={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB\u306E\u89E3\u6790\u306B\u5931\u6557\u3057\u307E\u3057\u305F ExtractRegistry.execRegRip.errMsg.failedAnalyzeRegFile3={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB\u306E\u89E3\u6790\u306B\u5931\u6557\u3057\u307E\u3057\u305F ExtractRegistry.execRegRip.errMsg.failedAnalyzeRegFile4={0}\:\u30EC\u30B8\u30B9\u30C8\u30EA\u30D5\u30A1\u30A4\u30EB\u306E\u89E3\u6790\u306B\u5931\u6557\u3057\u307E\u3057\u305F Firefox.moduleName=FireFox -Firefox.getHistory.errMsg.errFetchingFiles=Firefox\u306E\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Firefox.getHistory.errMsg.errFetchingFiles=Firefox\u306E\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Firefox.getHistory.errMsg.noFilesFound=Firefox\u5C65\u6B74\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 Firefox.getHistory.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F Firefox.parentModuleName.noSpace=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 Firefox.parentModuleName=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 -Firefox.getBookmark.errMsg.errFetchFiles=Firefox\u306E\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Firefox.getBookmark.errMsg.errFetchFiles=Firefox\u306E\u30D6\u30C3\u30AF\u30DE\u30FC\u30AF\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Firefox.getBookmark.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Firefox.getCookie.errMsg.errFetchFile=Firefox\u306Ecookie\u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Firefox.getCookie.errMsg.errFetchFile=Firefox\u306Ecookie\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Firefox.getCookie.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F Firefox.getDlPre24.errMsg.errFetchFiles=Firefox\u306E\u300C\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u300D\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Firefox.getDlPre24.errMsg.errAnalyzeFiles={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Firefox.getDlPre24.errMsg.errParsingArtifacts={0}\:{1} Firefox\u30A6\u30A7\u30D6\u5C65\u6B74\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Firefox.getDlPre24.errMsg.errParsingArtifacts={0}\:{1} Firefox\u30A6\u30A7\u30D6\u5C65\u6B74\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u3092\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Firefox.getDlV24.errMsg.errFetchFiles=Firefox\u306E\u300C\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u300D\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 Firefox.getDlV24.errMsg.errAnalyzeFile={0}\:\u30D5\u30A1\u30A4\u30EB\:{1}\u3092\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -Firefox.getDlV24.errMsg.errParsingArtifacts={0}\:{1} Firefox\u30A6\u30A7\u30D6\u5C65\u6B74\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +Firefox.getDlV24.errMsg.errParsingArtifacts={0}\:{1} Firefox\u30A6\u30A7\u30D6\u5C65\u6B74\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u3092\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 RAImageIngestModule.process.started={0}\u3092\u958B\u59CB\u3057\u307E\u3057\u305F -RAImageIngestModule.process.errModFailed={0}\u5931\u6557\u3057\u307E\u3057\u305F - \u8A73\u7D30\u306F\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044
-RAImageIngestModule.process.errModErrs={0}\u306B\u306F\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3057\u305F -- \u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044 +RAImageIngestModule.process.errModFailed={0}\u5931\u6557\u3057\u307E\u3057\u305F - \u8A73\u7D30\u306F\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044
+RAImageIngestModule.process.errModErrs={0}\u306B\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3057\u305F -- \u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044 RAImageIngestModule.process.errMsg.errsEncountered=

\u89E3\u6790\u4E2D\u306B\u767A\u751F\u3057\u305F\u30A8\u30E9\u30FC\uFF1A

    RAImageIngestModule.process.errMsgSub.oneErr=1\u3064\u306E\u30A8\u30E9\u30FC\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F RAImageIngestModule.process.errMsgSub.nErrs={0}\u306E\u30A8\u30E9\u30FC\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F RAImageIngestModule.process.ingestMsg.finished=\u5B8C\u4E86 {0} - {1} -RAImageIngestModule.process.errMsg.noErrs=

    \u30A8\u30E9\u30FC\u306F\u767A\u751F\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002

    -RAImageIngestModule.process.errMsgSub.noErrs=\u30A8\u30E9\u30FC\u306F\u30EC\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093 +RAImageIngestModule.process.errMsg.noErrs=

    \u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002

    +RAImageIngestModule.process.errMsgSub.noErrs=\u30A8\u30E9\u30FC\u304C\u30EC\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093 RAImageIngestModule.process.histMsg.title=

    {0}\u306B\u95A2\u3057\u3066\u306E\u30D6\u30E9\u30A6\u30B6\u30C7\u30FC\u30BF\uFF1A

      RAImageIngestModule.process.histMsg.found= \u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002 RAImageIngestModule.process.histMsg.notFnd=\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 RAImageIngestModule.process.ingestMsg.results={0} - \u30D6\u30E9\u30A6\u30B6\u7D50\u679C -RAImageIngestModule.complete.errMsg.failed={0} \u5B8C\u4E86\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F - \u8A73\u7D30\u306F\u30ED\u30B0\u3067\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044
      +RAImageIngestModule.complete.errMsg.failed={0} \u5B8C\u4E86\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F - \u8A73\u7D30\u306F\u30ED\u30B0\u3092\u78BA\u8A8D\u3057\u3066\u4E0B\u3055\u3044
      RAImageIngestModule.getName=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 RAImageIngestModule.getDesc=\u30A6\u30A7\u30D6\u30D6\u30E9\u30A6\u30B8\u30F3\u30B0\u3001\u6700\u8FD1\u958B\u3044\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3001\u6700\u8FD1\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u305F\u30D7\u30ED\u30B0\u30E9\u30E0\u7B49\u306E\u6700\u8FD1\u306E\u30E6\u30FC\u30B6\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3\u3092\u62BD\u51FA\u3057\u307E\u3059\u3002 -RecentDocumentsByLnk.getRecDoc.errMsg.errGetLnkFiles={0}\:lnk \u30D5\u30A1\u30A4\u30EB\u306E\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 -RecentDocumentsByLnk.getRecDoc.errParsingFile={0}\: \u6700\u8FD1\u306E\u30D5\u30A1\u30A4\u30EB{1}\u306E\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +RecentDocumentsByLnk.getRecDoc.errMsg.errGetLnkFiles={0}\:lnk\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u5F97\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 +RecentDocumentsByLnk.getRecDoc.errParsingFile={0}\: \u6700\u8FD1\u306E\u30D5\u30A1\u30A4\u30EB{1}\u3092\u30D1\u30FC\u30B9\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F RecentDocumentsByLnk.parentModuleName.noSpace=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 RecentDocumentsByLnk.parentModuleName=\u6700\u8FD1\u306E\u30A2\u30AF\u30C6\u30A3\u30D3\u30C6\u30A3 SearchEngineURLQueryAnalyzer.moduleName.text=\u691C\u7D22\u30A8\u30F3\u30B8\u30F3 diff --git a/ScalpelCarver/src/org/sleuthkit/autopsy/scalpel/Bundle_ja.properties b/ScalpelCarver/src/org/sleuthkit/autopsy/scalpel/Bundle_ja.properties index 5dc1dca03d..2f387da587 100644 --- a/ScalpelCarver/src/org/sleuthkit/autopsy/scalpel/Bundle_ja.properties +++ b/ScalpelCarver/src/org/sleuthkit/autopsy/scalpel/Bundle_ja.properties @@ -7,7 +7,7 @@ OpenIDE-Module-Short-Description=\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u304 ScalpelCarverIngestModule.moduleName=Scalpel\u30AB\u30FC\u30D0 ScalpelCarverIngestModule.moduleDesc.text=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u3092\u5B9F\u884C\u3059\u308B\u969B\u306B\u672A\u5272\u308A\u5F53\u3066\u9818\u57DF\u304B\u3089\u30D5\u30A1\u30A4\u30EB\u3092\u5207\u308A\u51FA\u3057\u307E\u3059\u3002\n\ \u5207\u308A\u51FA\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u306F\u518D\u5EA6\u89E3\u6790\u3055\u308C\u3001\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u30C4\u30EA\u30FC\u306B\u8868\u793A\u3055\u308C\u307E\u3059\u3002 -ScalpelCarverIngestModule.startUp.exception.msg1=\u73FE\u6642\u70B9\u3067\u306F\u3001Scalpel\u30AB\u30FC\u30D3\u30F3\u30B0\u30E2\u30B8\u30E5\u30FC\u30EB\u306FWindows OS\u4EE5\u5916\u3068\u306F\u4E92\u63DB\u6027\u304C\u3042\u308A\u307E\u305B\u3093\u3002 +ScalpelCarverIngestModule.startUp.exception.msg1=\u73FE\u5728\u3001Scalpel\u30AB\u30FC\u30D3\u30F3\u30B0\u30E2\u30B8\u30E5\u30FC\u30EB\u306FWindows OS\u4EE5\u5916\u3068\u306F\u4E92\u63DB\u6027\u304C\u3042\u308A\u307E\u305B\u3093\u3002 ScalpelCarverIngestModule.startUp.exception.msg2=Scalpel\u30AB\u30FC\u30D0\u306E\u521D\u671F\u5316\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002 ScalpelCarverIngestModule.startUp.exception.msg3=Scalpel\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30A2\u30A6\u30C8\u30D7\u30C3\u30C8\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 ScalpelCarverIngestModule.startUp.exception.msg4=Scalpel\u8A2D\u5B9A\u30D5\u30A1\u30A4\u30EB\u3078\u306E\u30D1\u30B9\u304C\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 \ No newline at end of file diff --git a/docs/doxygen-user/case_management.dox b/docs/doxygen-user/case_management.dox index 2521dd9bf2..5771c12166 100755 --- a/docs/doxygen-user/case_management.dox +++ b/docs/doxygen-user/case_management.dox @@ -14,7 +14,7 @@ There are several ways to create a new case: The New Case wizard dialog will open and you will need to enter the case name and base directory. A directory for the case will be created inside of the "base directory". If the directory already exists, you will need to either delete the existing directory or choose a different combination of names. -\image html case-newcase.png +\image html case-newcase.PNG NOTE: You will only have the option of making a multi-user case if you have configured Autopsy with multi-user settings. See \ref install_multiuser_page for installation instructions and \ref creating_multi_user_cases for details on creating multi-user cases. diff --git a/docs/doxygen-user/data_sources.dox b/docs/doxygen-user/data_sources.dox index aeb2428ef6..9e1f4acf3b 100755 --- a/docs/doxygen-user/data_sources.dox +++ b/docs/doxygen-user/data_sources.dox @@ -44,9 +44,11 @@ You cannot remove a data source from a case. \section ds_img Adding a Disk Image Autopsy supports disk images in the following formats: -- Raw Single (For example: *.img, *.dd, *.raw, etc) +- Raw Single (For example: *.img, *.dd, *.raw, *.bin) - Raw Split (For example: *.001, *.002, *.aa, *.ab, etc) -- EnCase (For example: *.e01, *e02, etc) +- EnCase (For example: *.e01, *.e02, etc) +- Virtual Machines (For example: *.vmdk, *.vhd) + To add a disk image: diff --git a/docs/doxygen-user/e01_verifier.dox b/docs/doxygen-user/e01_verifier.dox index 7c1f6100e6..57188a3362 100755 --- a/docs/doxygen-user/e01_verifier.dox +++ b/docs/doxygen-user/e01_verifier.dox @@ -26,6 +26,6 @@ Seeing Results You only see results from this module if the E01 is corrupted. A failure to load is shown below. -\image html e01-verifier.png +\image html e01-verifier.PNG */ diff --git a/docs/doxygen-user/filetype.dox b/docs/doxygen-user/filetype.dox index 633d317d14..8bc5a511cf 100644 --- a/docs/doxygen-user/filetype.dox +++ b/docs/doxygen-user/filetype.dox @@ -18,7 +18,7 @@ You do not need to configure anything with this module unless you want to define From there, you can define rules based on the offset of the signature and if the signature is a byte sequence of an ASCII string. -\image html filetype.png +\image html filetype.PNG Using the Module ====== diff --git a/docs/doxygen-user/hashdb_lookup.dox b/docs/doxygen-user/hashdb_lookup.dox index 20d948302d..44b9174d2e 100755 --- a/docs/doxygen-user/hashdb_lookup.dox +++ b/docs/doxygen-user/hashdb_lookup.dox @@ -54,7 +54,7 @@ Ingest Settings ------ When hashsets are configured, the user can select the hashsets to use during the ingest process. -\image html hash-lookup.png +\image html hash-lookup.PNG @@ -63,6 +63,6 @@ Seeing Results Results show up in the tree as "Hashset Hits", grouped by the name of the hash set. -\image html hashset-hits.png +\image html hashset-hits.PNG */ diff --git a/docs/doxygen-user/image_gallery.dox b/docs/doxygen-user/image_gallery.dox index d79f499d0e..be0c3c4b87 100644 --- a/docs/doxygen-user/image_gallery.dox +++ b/docs/doxygen-user/image_gallery.dox @@ -36,12 +36,12 @@ The tool has been designed specifically with child-exploitation cases in mind an Name|Description|Color ----|-----------------|------ -CAT-0|Uncategorized|![gray](ImageGallery/gray.png) -CAT-1|Child Abuse Material |![red](ImageGallery/red.png) -CAT-2|Child Exploitative / Age Difficult|![orange](ImageGallery/orange.png) -CAT-3|CGI / Animation|![yellow](ImageGallery/yellow.png) -CAT-4|Comparison Images |![bisque](ImageGallery/bisque.png) -CAT-5|Non-pertinent|![green](ImageGallery/green.png) +CAT-0|Uncategorized|![gray](ImageGallery/gray.PNG) +CAT-1|Child Abuse Material |![red](ImageGallery/red.PNG) +CAT-2|Child Exploitative / Age Difficult|![orange](ImageGallery/orange.PNG) +CAT-3|CGI / Animation|![yellow](ImageGallery/yellow.PNG) +CAT-4|Comparison Images |![bisque](ImageGallery/bisque.PNG) +CAT-5|Non-pertinent|![green](ImageGallery/green.PNG) GUI controls ================= @@ -82,10 +82,10 @@ Each file is represented in the main display area via a small tile. The tile sh | image | description | meaning| |----|----|-----| | | solid colored border | file’s assigned category.| -| ![](ImageGallery/purpledash.png) "" | purple dashed border | file has a known bad hashset hit, but has not yet been categorized. | -| ![](ImageGallery/hashset_hits.png) ""|pushpin | file has a known bad hashset hit| -| ![](ImageGallery/video-file.png) ""| clapboard on document | video file| -| ![](ImageGallery/flag_red.png) ""| a red flag | file has been 'flagged' as with the follow up tag| +| ![](ImageGallery/purpledash.PNG) "" | purple dashed border | file has a known bad hashset hit, but has not yet been categorized. | +| ![](ImageGallery/hashset_hits.PNG) ""|pushpin | file has a known bad hashset hit| +| ![](ImageGallery/video-file.PNG) ""| clapboard on document | video file| +| ![](ImageGallery/flag_red.PNG) ""| a red flag | file has been 'flagged' as with the follow up tag| Slide Show Mode diff --git a/docs/doxygen-user/images/ImageGallery/application_view_tile.png b/docs/doxygen-user/images/ImageGallery/application_view_tile.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/application_view_tile.png rename to docs/doxygen-user/images/ImageGallery/application_view_tile.PNG diff --git a/docs/doxygen-user/images/ImageGallery/bisque.png b/docs/doxygen-user/images/ImageGallery/bisque.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/bisque.png rename to docs/doxygen-user/images/ImageGallery/bisque.PNG diff --git a/docs/doxygen-user/images/ImageGallery/drawabletile.png b/docs/doxygen-user/images/ImageGallery/drawabletile.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/drawabletile.png rename to docs/doxygen-user/images/ImageGallery/drawabletile.PNG diff --git a/docs/doxygen-user/images/ImageGallery/flag_gray.png b/docs/doxygen-user/images/ImageGallery/flag_gray.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/flag_gray.png rename to docs/doxygen-user/images/ImageGallery/flag_gray.PNG diff --git a/docs/doxygen-user/images/ImageGallery/flag_red.png b/docs/doxygen-user/images/ImageGallery/flag_red.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/flag_red.png rename to docs/doxygen-user/images/ImageGallery/flag_red.PNG diff --git a/docs/doxygen-user/images/ImageGallery/folder_picture.png b/docs/doxygen-user/images/ImageGallery/folder_picture.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/folder_picture.png rename to docs/doxygen-user/images/ImageGallery/folder_picture.PNG diff --git a/docs/doxygen-user/images/ImageGallery/gray.png b/docs/doxygen-user/images/ImageGallery/gray.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/gray.png rename to docs/doxygen-user/images/ImageGallery/gray.PNG diff --git a/docs/doxygen-user/images/ImageGallery/green.png b/docs/doxygen-user/images/ImageGallery/green.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/green.png rename to docs/doxygen-user/images/ImageGallery/green.PNG diff --git a/docs/doxygen-user/images/ImageGallery/hashset_hits.png b/docs/doxygen-user/images/ImageGallery/hashset_hits.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/hashset_hits.png rename to docs/doxygen-user/images/ImageGallery/hashset_hits.PNG diff --git a/docs/doxygen-user/images/ImageGallery/orange.png b/docs/doxygen-user/images/ImageGallery/orange.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/orange.png rename to docs/doxygen-user/images/ImageGallery/orange.PNG diff --git a/docs/doxygen-user/images/ImageGallery/purpledash.png b/docs/doxygen-user/images/ImageGallery/purpledash.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/purpledash.png rename to docs/doxygen-user/images/ImageGallery/purpledash.PNG diff --git a/docs/doxygen-user/images/ImageGallery/red.png b/docs/doxygen-user/images/ImageGallery/red.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/red.png rename to docs/doxygen-user/images/ImageGallery/red.PNG diff --git a/docs/doxygen-user/images/ImageGallery/slide.png b/docs/doxygen-user/images/ImageGallery/slide.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/slide.png rename to docs/doxygen-user/images/ImageGallery/slide.PNG diff --git a/docs/doxygen-user/images/ImageGallery/video-file.png b/docs/doxygen-user/images/ImageGallery/video-file.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/video-file.png rename to docs/doxygen-user/images/ImageGallery/video-file.PNG diff --git a/docs/doxygen-user/images/ImageGallery/yellow.png b/docs/doxygen-user/images/ImageGallery/yellow.PNG similarity index 100% rename from docs/doxygen-user/images/ImageGallery/yellow.png rename to docs/doxygen-user/images/ImageGallery/yellow.PNG diff --git a/docs/doxygen-user/images/nsrl_import_process.png b/docs/doxygen-user/images/nsrl_import_process.PNG similarity index 100% rename from docs/doxygen-user/images/nsrl_import_process.png rename to docs/doxygen-user/images/nsrl_import_process.PNG diff --git a/docs/doxygen-user/images/nsrl_imported.png b/docs/doxygen-user/images/nsrl_imported.PNG similarity index 100% rename from docs/doxygen-user/images/nsrl_imported.png rename to docs/doxygen-user/images/nsrl_imported.PNG diff --git a/docs/doxygen-user/images/screenshot.png b/docs/doxygen-user/images/screenshot.PNG similarity index 100% rename from docs/doxygen-user/images/screenshot.png rename to docs/doxygen-user/images/screenshot.PNG diff --git a/docs/doxygen-user/images/ui-layout-1.png b/docs/doxygen-user/images/ui-layout-1.PNG similarity index 100% rename from docs/doxygen-user/images/ui-layout-1.png rename to docs/doxygen-user/images/ui-layout-1.PNG diff --git a/docs/doxygen-user/ingest.dox b/docs/doxygen-user/ingest.dox index 1d2257433d..27a3412d0e 100644 --- a/docs/doxygen-user/ingest.dox +++ b/docs/doxygen-user/ingest.dox @@ -10,7 +10,7 @@ This page covers the use of ingest modules. Specific pages will cover the confi Ingest modules are configured to find user content quickly. The ingest modules are grouped into pipelines and each file goes down the pipeline, module by module. A pipeline may have modules in the following order: -\image html ingest_pipeline.png +\image html ingest_pipeline.PNG Multiple pipelines may be running at the same time. By default, two pipelines are running, but you can add more depending on how many cores you have on your system. You can configure the number of pipelines to make in the "Tools", "Options", "General" area. @@ -31,7 +31,7 @@ Once ingest is started, you can review the currently running ingest tasks in the You will be presented with an interface to configure the ingest modules. From here, you can choose to enable or disable each module and some modules will have further configuration settings. -\image html select-ingest-modules.png +\image html select-ingest-modules.PNG There are two places to configure ingest modules. When you select the module name, you may have some "run time" options to configure in the panel to the right. These are generally settings that you may want to change from image to image. diff --git a/docs/doxygen-user/quick_start_guide.dox b/docs/doxygen-user/quick_start_guide.dox index 35bc8aae60..67afb60c9f 100755 --- a/docs/doxygen-user/quick_start_guide.dox +++ b/docs/doxygen-user/quick_start_guide.dox @@ -43,7 +43,7 @@ While ingest modules are running in the background, you will see a progress bar \section s1a Analysis Basics -\image html screenshot.png +\image html screenshot.PNG You will start all of your analysis techniques from the tree on the left. diff --git a/docs/doxygen-user/recent_activity.dox b/docs/doxygen-user/recent_activity.dox index 41efe651c0..adf3d5fa3f 100755 --- a/docs/doxygen-user/recent_activity.dox +++ b/docs/doxygen-user/recent_activity.dox @@ -24,6 +24,6 @@ Seeing Results ------ Results show up in the tree under "Extracted Content". -\image html extracted_content.png +\image html extracted_content.PNG */ diff --git a/docs/doxygen/modContent.dox b/docs/doxygen/modContent.dox index 1bf3fd5420..830091a189 100755 --- a/docs/doxygen/modContent.dox +++ b/docs/doxygen/modContent.dox @@ -4,7 +4,7 @@ DataContentViewer modules exist in the lower-right area of the default Autopsy interface, as shown below. -\image html viewer_image.jpg "Module Viewer Areas" +\image html viewer_image.JPG "Module Viewer Areas" They can analyze a single file that the user has identified from either browsing directories, keyword search, etc. It doesn't matter to these modules how the user found the file. These modules allow the user to view the file in various ways. The default program comes with a hex and strings view and other modules exist to display pictures and videos as images instead of just a series of bytes. diff --git a/docs/doxygen/modResult.dox b/docs/doxygen/modResult.dox index 0daab56fa6..12f37ead61 100755 --- a/docs/doxygen/modResult.dox +++ b/docs/doxygen/modResult.dox @@ -3,7 +3,7 @@ \section result_overview Overview DataResultViewer modules exist in the upper-right area of the default Autopsy interface, as shown below. -\image html viewer_image.jpg "Module Viewer Areas" +\image html viewer_image.JPG "Module Viewer Areas" They display a set of files that are passed into the viewer from the tree on the left, keyword searching, or other searches. The main idea is that the same set of files can be viewed in table form, thumbnail form, or any other form that you can think of. Once a file is selected from the DataResult area, it is passed to the DataContent area for display. diff --git a/docs/doxygen/viewer_image.jpg b/docs/doxygen/viewer_image.JPG similarity index 100% rename from docs/doxygen/viewer_image.jpg rename to docs/doxygen/viewer_image.JPG diff --git a/pythonExamples/dataSourceIngestModule.py b/pythonExamples/dataSourceIngestModule.py index 6e99ee3cee..0c1961b60f 100755 --- a/pythonExamples/dataSourceIngestModule.py +++ b/pythonExamples/dataSourceIngestModule.py @@ -140,7 +140,7 @@ class SampleJythonDataSourceIngestModule(DataSourceIngestModule): # Make an artifact on the blackboard. TSK_INTERESTING_FILE_HIT is a generic type of # artfiact. Refer to the developer docs for other examples. art = file.newArtifact(BlackboardArtifact.ARTIFACT_TYPE.TSK_INTERESTING_FILE_HIT) - att = BlackboardAttribute(BlackboardAttribute.ATTRIBUTE_TYPE.TSK_SET_NAME.getTypeID(), SampleJythonDataSourceIngestModuleFactory.moduleName, "Test file") + att = BlackboardAttribute(BlackboardAttribute.ATTRIBUTE_TYPE.TSK_SET_NAME, SampleJythonDataSourceIngestModuleFactory.moduleName, "Test file") art.addAttribute(att) # This will work in 4.0.1 and beyond diff --git a/pythonExamples/fileIngestModule.py b/pythonExamples/fileIngestModule.py index fb7633521b..43d486204e 100755 --- a/pythonExamples/fileIngestModule.py +++ b/pythonExamples/fileIngestModule.py @@ -128,7 +128,7 @@ class SampleJythonFileIngestModule(FileIngestModule): # Make an artifact on the blackboard. TSK_INTERESTING_FILE_HIT is a generic type of # artifact. Refer to the developer docs for other examples. art = file.newArtifact(BlackboardArtifact.ARTIFACT_TYPE.TSK_INTERESTING_FILE_HIT) - att = BlackboardAttribute(BlackboardAttribute.ATTRIBUTE_TYPE.TSK_SET_NAME.getTypeID(), + att = BlackboardAttribute(BlackboardAttribute.ATTRIBUTE_TYPE.TSK_SET_NAME, SampleJythonFileIngestModuleFactory.moduleName, "Text Files") art.addAttribute(att) diff --git a/thunderbirdparser/src/org/sleuthkit/autopsy/thunderbirdparser/Bundle_ja.properties b/thunderbirdparser/src/org/sleuthkit/autopsy/thunderbirdparser/Bundle_ja.properties index 39fa1f3833..bf1cb7ba93 100644 --- a/thunderbirdparser/src/org/sleuthkit/autopsy/thunderbirdparser/Bundle_ja.properties +++ b/thunderbirdparser/src/org/sleuthkit/autopsy/thunderbirdparser/Bundle_ja.properties @@ -1,26 +1,27 @@ -OpenIDE-Module-Display-Category=\u30a4\u30f3\u30b8\u30a7\u30b9\u30c8\u30e2\u30b8\u30e5\u30fc\u30eb -OpenIDE-Module-Long-Description=\ - Thunderbird\u30d1\u30fc\u30b5\u30a4\u30f3\u30b8\u30a7\u30b9\u30c8\u30e2\u30b8\u30e5\u30fc\u30eb\u3002\n\n\ - \u3053\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u306f\u51e6\u7406\u3055\u308c\u305f\u30c7\u30a3\u30b9\u30af\u30a4\u30e1\u30fc\u30b8\u304b\u3089Thunderbird E\u30e1\u30fc\u30eb\u30d5\u30a9\u30eb\u30c0\u30fc\u968e\u5c64\u3092\u62bd\u51fa\u3057\u3001\u898b\u3064\u304b\u3063\u305f\u30d5\u30a9\u30eb\u30c0\u968e\u5c64\u3068E\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u7d50\u679c\u3068\u3057\u3066\u6295\u7a3f\u3057\u307e\u3059\u3002 -OpenIDE-Module-Name=Thunderbird\u30d1\u30fc\u30b5 -OpenIDE-Module-Short-Description=Thunderbird\u30d1\u30fc\u30b5E\u30e1\u30fc\u30eb\u30fb\u30a8\u30af\u30b9\u30c8\u30e9\u30af\u30bf\u30fc\u30fb\u30a4\u30f3\u30b8\u30a7\u30b9\u30c8\u30e2\u30b8\u30e5\u30fc\u30eb -MboxParser.parse.errMsg.failedToReadFile=\u30c7\u30a3\u30b9\u30af\u304b\u3089mbox\u30d5\u30a1\u30a4\u30eb\u3092\u8aad\u307f\u53d6\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -MboxParser.parse.errMsg.couldntFindCharset=\u9069\u5207\u306a\u6587\u5b57\u30bb\u30c3\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -MboxParser.parse.errMsg.failedToParseNMsgs={0}\u500b\u306eE\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8\u306e\u62bd\u51fa\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 -MboxParser.handleAttch.errMsg.failedToCreateOnDisk=\u30a2\u30bf\u30c3\u30c1\u30e1\u30f3\u30c8\u3092\u30c7\u30a3\u30b9\u30af\: {0}\u3078\u62bd\u51fa\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f (MBOX) -MboxParser.handleAttch.failedWriteToDisk=\u30a2\u30bf\u30c3\u30c1\u30e1\u30f3\u30c8\u3092\u30c7\u30a3\u30b9\u30af\: {0}\u3078\u62bd\u51fa\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f -PstParser.parse.errMsg.failedToParseNMsgs={0}\u500b\u306eE\u30e1\u30fc\u30eb\u30e1\u30c3\u30bb\u30fc\u30b8\u306e\u62bd\u51fa\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 -PstParser.extractAttch.errMsg.failedToExtractToDisk=\u30a2\u30bf\u30c3\u30c1\u30e1\u30f3\u30c8\u3092\u30c7\u30a3\u30b9\u30af\: {0}\u3078\u62bd\u51fa\u3059\u308b\u306e\u306b\u5931\u6557\u3057\u307e\u3057\u305f (PST) -ThunderbirdMboxFileIngestModule.moduleName=E\u30e1\u30fc\u30eb\u30d1\u30fc\u30b5 -ThunderbirdMboxFileIngestModule.processPst.errMsg.outOfDiskSpace=\u30c7\u30a3\u30b9\u30af\u9818\u57df\u304c\u4e0d\u8db3\u3057\u3066\u3044\u307e\u3059\u3002\u30d1\u30fc\u30b9\u3059\u308b\u70ba\u306b{0}\u3092\u30b3\u30d4\u30fc\u3067\u304d\u307e\u305b\u3093\u3002 -ThunderbirdMboxFileIngestModule.encryptionFileLevel=\u30d5\u30a1\u30a4\u30eb\u30ec\u30d9\u30eb\u6697\u53f7\u5316 -ThunderbirdMboxFileIngestModule.processPst.errProcFile.msg={0}\u306e\u51e6\u7406\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f -ThunderbirdMboxFileIngestModule.processPst.errProcFile.details=Outlook 2003\u304a\u3088\u3073\u305d\u308c\u4ee5\u964d\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u304b\u3089\u306e\u30d5\u30a1\u30a4\u30eb\u3057\u304b\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002 -ThunderbirdMboxFileIngestModule.processPst.errProcFile.msg2={0}\u306e\u51e6\u7406\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f -ThunderbirdMboxFileIngestModule.processMBox.errProcFile.msg={0}\u306e\u51e6\u7406\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f -ThunderbirdMboxFileIngestModule.processMBox.errProfFile.details=\u30c7\u30a3\u30b9\u30af\u9818\u57df\u304c\u4e0d\u8db3\u3057\u3066\u3044\u307e\u3059\u3002\u30d1\u30fc\u30b9\u3059\u308b\u70ba\u306b\u30d5\u30a1\u30a4\u30eb\u3092\u30b3\u30d4\u30fc\u3067\u304d\u307e\u305b\u3093\u3002 -ThunderbirdMboxFileIngestModule.processMBox.errProcFile.msg2={0}\u306e\u51e6\u7406\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f -ThunderbirdMboxFileIngestModule.getDesc.text=\u3053\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u306fmbox\u304a\u3088\u3073pst/ost\u30d5\u30a1\u30a4\u30eb\u3092\u691c\u51fa\u3001\u30d1\u30fc\u30b9\u3057\u3001blackboard\u306eE\u30e1\u30fc\u30eb\u30a2\u30fc\u30c6\u30a3\u30d5\u30a1\u30af\u30c8\u306b\u30c7\u30fc\u30bf\u3092\u6295\u5165\u3057\u307e\u3059\u3002 -ThunderbirdMboxFileIngestModule.handleAttch.errMsg={0}\u306e\u51e6\u7406\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f -ThunderbirdMboxFileIngestModule.handleAttch.errMsg.details={0}\u306e\u540d\u79f0\u3092\u6301\u3064\u30a2\u30bf\u30c3\u30c1\u30e1\u30f3\u30c8\u3092\u30b1\u30fc\u30b9\u306b\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -ThunderbirdMboxFileIngestModule.notAvail=\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093 \ No newline at end of file +OpenIDE-Module-Display-Category=\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB +OpenIDE-Module-Long-Description=\ \ + Email\u30D1\u30FC\u30B5\u30A4\u30F3\u30B8\u30A7\u30B9\u30C8\u30E2\u30B8\u30E5\u30FC\u30EB\u3002\n\n\ + \u3053\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306FMBOX\u3068PST e-mail\u30D5\u30A1\u30A4\u30EB\u3092\u62BD\u51FA\u3057\u3001Blackboard\u306B\u8F09\u305B\u307E\u3059\u3002 \n\ + Thunderbird\u306EMBOX\u30D5\u30A1\u30A4\u30EB\u306E\u30D5\u30A9\u30EB\u30C0\u69CB\u9020\u3092\u628A\u63E1\u3057\u3066\u3044\u307E\u3059\u3002 +OpenIDE-Module-Name=Email\u30D1\u30FC\u30B5 +OpenIDE-Module-Short-Description=MOBX\u3068PST\u30D5\u30A1\u30A4\u30EB\u3092\u30D1\u30FC\u30B9\u3057\u307E\u3059 +MboxParser.parse.errMsg.failedToReadFile=\u30C7\u30A3\u30B9\u30AF\u304B\u3089mbox\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u53D6\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +MboxParser.parse.errMsg.couldntFindCharset=\u9069\u5207\u306A\u6587\u5B57\u30BB\u30C3\u30C8\u30A8\u30F3\u30B3\u30FC\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +MboxParser.parse.errMsg.failedToParseNMsgs={0}\u500B\u306EEmail\u30E1\u30C3\u30BB\u30FC\u30B8\u306E\u62BD\u51FA\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002 +MboxParser.handleAttch.errMsg.failedToCreateOnDisk=MBOX\u306E\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3092\u30C7\u30A3\u30B9\u30AF\: {0}\u3078\u62BD\u51FA\u3059\u308B\u306E\u306B\u5931\u6557\u3057\u307E\u3057\u305F +MboxParser.handleAttch.failedWriteToDisk=\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3092\u30C7\u30A3\u30B9\u30AF\: {0}\u3078\u62BD\u51FA\u3059\u308B\u306E\u306B\u5931\u6557\u3057\u307E\u3057\u305F +PstParser.parse.errMsg.failedToParseNMsgs={0}\u500B\u306EEmail\u30E1\u30C3\u30BB\u30FC\u30B8\u306E\u62BD\u51FA\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002 +PstParser.extractAttch.errMsg.failedToExtractToDisk=PST\u306E\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3092\u30C7\u30A3\u30B9\u30AF\: {0}\u3078\u62BD\u51FA\u3059\u308B\u306E\u306B\u5931\u6557\u3057\u307E\u3057\u305F +ThunderbirdMboxFileIngestModule.moduleName=Email\u30D1\u30FC\u30B5 +ThunderbirdMboxFileIngestModule.processPst.errMsg.outOfDiskSpace=\u30C7\u30A3\u30B9\u30AF\u9818\u57DF\u304C\u4E0D\u8DB3\u3057\u3066\u3044\u307E\u3059\u3002\u30D1\u30FC\u30B9\u3059\u308B\u70BA\u306B{0}\u3092\u30B3\u30D4\u30FC\u3067\u304D\u307E\u305B\u3093\u3002 +ThunderbirdMboxFileIngestModule.encryptionFileLevel=\u30D5\u30A1\u30A4\u30EB\u30EC\u30D9\u30EB\u6697\u53F7\u5316 +ThunderbirdMboxFileIngestModule.processPst.errProcFile.msg={0}\u306E\u51E6\u7406\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ThunderbirdMboxFileIngestModule.processPst.errProcFile.details=Outlook 2003\u304A\u3088\u3073\u305D\u308C\u4EE5\u964D\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u304B\u3089\u306E\u30D5\u30A1\u30A4\u30EB\u3057\u304B\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 +ThunderbirdMboxFileIngestModule.processPst.errProcFile.msg2={0}\u306E\u51E6\u7406\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ThunderbirdMboxFileIngestModule.processMBox.errProcFile.msg={0}\u306E\u51E6\u7406\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ThunderbirdMboxFileIngestModule.processMBox.errProfFile.details=\u30C7\u30A3\u30B9\u30AF\u9818\u57DF\u304C\u4E0D\u8DB3\u3057\u3066\u3044\u307E\u3059\u3002\u30D1\u30FC\u30B9\u3059\u308B\u70BA\u306B\u30D5\u30A1\u30A4\u30EB\u3092\u30B3\u30D4\u30FC\u3067\u304D\u307E\u305B\u3093\u3002 +ThunderbirdMboxFileIngestModule.processMBox.errProcFile.msg2={0}\u306E\u51E6\u7406\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ThunderbirdMboxFileIngestModule.getDesc.text=\u3053\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306Fmbox\u304A\u3088\u3073pst/ost\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u51FA\u3001\u30D1\u30FC\u30B9\u3057\u3001blackboard\u306EEmail\u30A2\u30FC\u30C6\u30A3\u30D5\u30A1\u30AF\u30C8\u306B\u7D50\u679C\u3092\u6295\u5165\u3057\u307E\u3059\u3002 +ThunderbirdMboxFileIngestModule.handleAttch.errMsg={0}\u306E\u51E6\u7406\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F +ThunderbirdMboxFileIngestModule.handleAttch.errMsg.details={0}\u306E\u540D\u79F0\u3092\u6301\u3064\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3092\u30B1\u30FC\u30B9\u306B\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002 +ThunderbirdMboxFileIngestModule.notAvail=\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093 \ No newline at end of file