1 /*
2  * CollabExternalEditEvent.java
3  *
4  * Copyright (C) 2021 by RStudio, PBC
5  *
6  * Unless you have received this program directly from RStudio pursuant
7  * to the terms of a commercial license agreement with RStudio, then
8  * this program is licensed to you under the terms of version 3 of the
9  * GNU Affero General Public License. This program is distributed WITHOUT
10  * ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THOSE OF NON-INFRINGEMENT,
11  * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Please refer to the
12  * AGPL (http://www.gnu.org/licenses/agpl-3.0.txt) for more details.
13  *
14  */
15 
16 package org.rstudio.studio.client.workbench.views.source.events;
17 
18 import org.rstudio.core.client.js.JavaScriptSerializable;
19 import org.rstudio.studio.client.application.events.CrossWindowEvent;
20 
21 import com.google.gwt.event.shared.EventHandler;
22 import com.google.gwt.event.shared.GwtEvent;
23 
24 @JavaScriptSerializable
25 public class CollabExternalEditEvent
26              extends CrossWindowEvent<CollabExternalEditEvent.Handler>
27 {
28    public interface Handler extends EventHandler
29    {
onCollabExternalEdit(CollabExternalEditEvent event)30       void onCollabExternalEdit(CollabExternalEditEvent event);
31    }
32 
33    public static final GwtEvent.Type<CollabExternalEditEvent.Handler> TYPE = new GwtEvent.Type<>();
34 
CollabExternalEditEvent()35    public CollabExternalEditEvent()
36    {
37    }
38 
CollabExternalEditEvent(String docId, String docPath, double lastModified)39    public CollabExternalEditEvent(String docId, String docPath,
40          double lastModified)
41    {
42       docId_ = docId;
43       docPath_ = docPath;
44       lastModified_ = lastModified;
45    }
46 
getDocPath()47    public String getDocPath()
48    {
49       return docPath_;
50    }
51 
getDocId()52    public String getDocId()
53    {
54       return docId_;
55    }
56 
getLastModified()57    public double getLastModified()
58    {
59       return lastModified_;
60    }
61 
62    @Override
forward()63    public boolean forward()
64    {
65       return false;
66    }
67 
68    @Override
dispatch(CollabExternalEditEvent.Handler handler)69    protected void dispatch(CollabExternalEditEvent.Handler handler)
70    {
71       handler.onCollabExternalEdit(this);
72    }
73 
74    @Override
getAssociatedType()75    public GwtEvent.Type<CollabExternalEditEvent.Handler> getAssociatedType()
76    {
77       return TYPE;
78    }
79 
80    private String docId_;
81    private String docPath_;
82    private double lastModified_;
83 }
84