-
Notifications
You must be signed in to change notification settings - Fork 642
Expand file tree
/
Copy pathMetaInterface.java
More file actions
106 lines (94 loc) · 4.52 KB
/
MetaInterface.java
File metadata and controls
106 lines (94 loc) · 4.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package org.bimserver.shared.interfaces;
/******************************************************************************
* Copyright (C) 2009-2019 BIMserver.org
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see {@literal<http://www.gnu.org/licenses/>}.
*****************************************************************************/
import java.util.List;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.ParameterStyle;
import javax.jws.soap.SOAPBinding.Style;
import javax.jws.soap.SOAPBinding.Use;
import org.bimserver.interfaces.objects.SServiceInterface;
import org.bimserver.interfaces.objects.SServiceMethod;
import org.bimserver.interfaces.objects.SServiceParameter;
import org.bimserver.interfaces.objects.SServiceType;
import org.bimserver.shared.exceptions.ServerException;
import org.bimserver.shared.exceptions.UserException;
@WebService(name = "MetaInterface", targetNamespace="org.bimserver")
@SOAPBinding(style = Style.DOCUMENT, use = Use.LITERAL, parameterStyle = ParameterStyle.WRAPPED)
public interface MetaInterface extends PublicInterface {
/**
* @return A list of all the registered services
* @throws ServerException
* @throws UserException
*/
@WebMethod(action="getServiceInterfaces")
List<SServiceInterface> getServiceInterfaces() throws ServerException, UserException;
/**
* @return An SServiceInterface object containing the service information
* @param serviceInterfaceName The name of the service
* @throws ServerException
* @throws UserException
*/
@WebMethod(action="getServiceInterface")
SServiceInterface getServiceInterface(
@WebParam(name = "serverInterfaceName", partName = "getServiceInterface.serviceInterfaceName") String serviceInterfaceName) throws ServerException, UserException;
/**
* @param serviceInterfaceName The name of the service
* @return A list of all methods of the given service
* @throws ServerException
* @throws UserException
*/
@WebMethod(action="getServiceMethods")
List<SServiceMethod> getServiceMethods(
@WebParam(name = "serviceInterfaceName", partName = "getServiceMethods.serviceInterfaceName") String serviceInterfaceName) throws ServerException, UserException;
/**
* @param serviceInterfaceName The name of the service
* @param methodName The name of the method
* @return The method with the given name of the given service
* @throws ServerException
* @throws UserException
*/
@WebMethod(action="getServiceMethod")
SServiceMethod getServiceMethod(
@WebParam(name = "serviceInterfaceName", partName = "getServiceMethod.serviceInterfaceName") String serviceInterfaceName,
@WebParam(name = "methodName", partName = "getServiceMethod.methodName") String methodName) throws ServerException, UserException;
/**
* @return A list of all types known for the given service
* @throws ServerException
* @throws UserException
*/
@WebMethod(action="getServiceTypes")
List<SServiceType> getServiceTypes() throws ServerException, UserException;
/**
* @param serviceInterfaceName The name of the service
* @param serviceMethodName The name of the method
* @return A list of all parameters of the given method of the given service
* @throws ServerException
* @throws UserException
*/
@WebMethod(action="getServiceMethodParameters")
List<SServiceParameter> getServiceMethodParameters(
@WebParam(name = "serviceInterfaceName", partName = "getServiceMethodParameters.serviceInterfaceName") String serviceInterfaceName,
@WebParam(name = "serviceMethodName", partName = "getServiceMethodParameters.serviceMethodName") String serviceMethodName) throws ServerException, UserException;
@WebMethod(action="getEnumLiterals")
List<String> getEnumLiterals(
@WebParam(name = "enumName", partName = "getEnumLiterals.enumName") String enumName) throws UserException, ServerException;
@WebMethod(action="getAllAsJson")
String getAllAsJson() throws UserException, ServerException;
}