Package: VdmBreakpointAdapterFactory

VdmBreakpointAdapterFactory

nameinstructionbranchcomplexitylinemethod
VdmBreakpointAdapterFactory()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getAdapter(Object, Class)
M: 52 C: 0
0%
M: 16 C: 0
0%
M: 9 C: 0
0%
M: 14 C: 0
0%
M: 1 C: 0
0%
getAdapterList()
M: 2 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%

Coverage

1: /*
2: * #%~
3: * org.overture.ide.debug
4: * %%
5: * Copyright (C) 2008 - 2014 Overture
6: * %%
7: * This program is free software: you can redistribute it and/or modify
8: * it under the terms of the GNU General Public License as
9: * published by the Free Software Foundation, either version 3 of the
10: * License, or (at your option) any later version.
11: *
12: * This program is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15: * GNU General Public License for more details.
16: *
17: * You should have received a copy of the GNU General Public
18: * License along with this program. If not, see
19: * <http://www.gnu.org/licenses/gpl-3.0.html>.
20: * #~%
21: */
22: package org.overture.ide.debug.ui.model;
23:
24: import org.eclipse.core.resources.IFile;
25: import org.eclipse.core.resources.IResource;
26: import org.eclipse.core.runtime.CoreException;
27: import org.eclipse.core.runtime.IAdapterFactory;
28: import org.eclipse.ui.texteditor.ITextEditor;
29: import org.overture.ide.core.resources.IVdmProject;
30:
31: public class VdmBreakpointAdapterFactory implements IAdapterFactory
32: {
33:
34:         public Object getAdapter(Object adaptableObject,
35:                         @SuppressWarnings("rawtypes") Class adapterType)
36:         {
37:•                if (adaptableObject instanceof ITextEditor)
38:                 {
39:                         ITextEditor editorPart = (ITextEditor) adaptableObject;
40:                         IResource resource = (IResource) editorPart.getEditorInput().getAdapter(IResource.class);
41:•                        if (resource != null && resource instanceof IFile)
42:                         {
43:                                 IFile file = (IFile) resource;
44:                                 try
45:                                 {
46:•                                        if (file == null || !file.exists()
47:•                                                        || !file.isSynchronized(IResource.DEPTH_ZERO))
48:                                         {
49:                                                 return null;
50:                                         }
51:                                         IVdmProject project = (IVdmProject) file.getProject().getAdapter(IVdmProject.class);
52:•                                        if (project != null && project.isModelFile(file))
53:                                         {
54:                                                 return new VdmLineBreakpointAdapter();
55:                                         }
56:                                 } catch (CoreException e)
57:                                 {
58:                                         // TODO Auto-generated catch block
59:                                         e.printStackTrace();
60:                                 }
61:
62:                         }
63:                 }
64:                 return null;
65:         }
66:
67:         @SuppressWarnings("rawtypes")
68:         public Class[] getAdapterList()
69:         {
70:                 // TODO Auto-generated method stub
71:                 return null;
72:         }
73:
74: }