Project

General

Profile

« Previous | Next » 

Revision e2bff0b1

Added by Andreas Kohlbecker about 4 years ago

ref #8842 claning up - removing obsolete classes and renaming

View differences:

eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteConfiguration.java
89 89
import eu.etaxonomy.cdm.persistence.hibernate.permission.voter.TaxonNodeVoter;
90 90
import eu.etaxonomy.taxeditor.remoting.source.ICdmRemoteSource;
91 91
import eu.etaxonomy.taxeditor.service.CachedCommonServiceImpl;
92
import eu.etaxonomy.taxeditor.service.CdmAuthenticatedHttpInvokerRequestExecutor;
93
import eu.etaxonomy.taxeditor.service.CdmServiceRequestExecutor;
92
import eu.etaxonomy.taxeditor.service.AuthenticatingHttpInvokerRequestExecutor;
94 93
import eu.etaxonomy.taxeditor.service.ICachedCommonService;
95 94
import eu.etaxonomy.taxeditor.service.RemoteInvocationTermCacher;
96 95
import eu.etaxonomy.taxeditor.session.CdmEntitySessionManager;
......
192 191
     * @return
193 192
     */
194 193
    public IEditGeoService getEditGeoService() {
195
        return (IEditGeoService) getService(IEditGeoService.class, "/remoting/editgeo.service", new CdmServiceRequestExecutor());
194
        return (IEditGeoService) getService(IEditGeoService.class, "/remoting/editgeo.service", new AuthenticatingHttpInvokerRequestExecutor());
196 195
    }
197 196

  
198 197
    /**
......
227 226

  
228 227
    @Override
229 228
    public IAgentService getAgentService(){
230
        return (IAgentService) getService(IAgentService.class, "/remoting/agent.service", new CdmServiceRequestExecutor());
229
        return (IAgentService) getService(IAgentService.class, "/remoting/agent.service", new AuthenticatingHttpInvokerRequestExecutor());
231 230
    }
232 231

  
233 232
    @Override
234 233
    public IAnnotationService getAnnotationService(){
235
        return (IAnnotationService) getService(IAnnotationService.class, "/remoting/annotation.service", new CdmServiceRequestExecutor());
234
        return (IAnnotationService) getService(IAnnotationService.class, "/remoting/annotation.service", new AuthenticatingHttpInvokerRequestExecutor());
236 235
    }
237 236

  
238 237
    @Override
239 238
    public IDatabaseService getDatabaseService(){
240
        return (IDatabaseService) getService(IDatabaseService.class, "/remoting/database.service", new CdmServiceRequestExecutor());
239
        return (IDatabaseService) getService(IDatabaseService.class, "/remoting/database.service", new AuthenticatingHttpInvokerRequestExecutor());
241 240
    }
242 241

  
243 242
    @Override
244 243
    public INameService getNameService(){
245
        return (INameService) getService(INameService.class, "/remoting/name.service", new CdmServiceRequestExecutor());
244
        return (INameService) getService(INameService.class, "/remoting/name.service", new AuthenticatingHttpInvokerRequestExecutor());
246 245
    }
247 246

  
248 247
    @Override
249 248
    public IReferenceService getReferenceService(){
250
        return (IReferenceService) getService(IReferenceService.class, "/remoting/reference.service", new CdmServiceRequestExecutor());
249
        return (IReferenceService) getService(IReferenceService.class, "/remoting/reference.service", new AuthenticatingHttpInvokerRequestExecutor());
251 250
    }
252 251

  
253 252
    @Override
254 253
    public ITaxonService getTaxonService(){
255
        return (ITaxonService) getService(ITaxonService.class, "/remoting/taxon.service", new CdmServiceRequestExecutor());
254
        return (ITaxonService) getService(ITaxonService.class, "/remoting/taxon.service", new AuthenticatingHttpInvokerRequestExecutor());
256 255
    }
257 256

  
258 257
    @Override
259 258
    public IClassificationService getClassificationService(){
260
        return (IClassificationService) getService(IClassificationService.class, "/remoting/classification.service", new CdmServiceRequestExecutor());
259
        return (IClassificationService) getService(IClassificationService.class, "/remoting/classification.service", new AuthenticatingHttpInvokerRequestExecutor());
261 260
    }
262 261

  
263 262
    @Override
264 263
    public ITaxonNodeService getTaxonNodeService(){
265
        return (ITaxonNodeService) getService(ITaxonNodeService.class, "/remoting/taxonnode.service", new CdmServiceRequestExecutor());
264
        return (ITaxonNodeService) getService(ITaxonNodeService.class, "/remoting/taxonnode.service", new AuthenticatingHttpInvokerRequestExecutor());
266 265
    }
267 266

  
268 267
    @Override
269 268
    public IDescriptionService getDescriptionService(){
270
        return (IDescriptionService) getService(IDescriptionService.class, "/remoting/description.service", new CdmServiceRequestExecutor());
269
        return (IDescriptionService) getService(IDescriptionService.class, "/remoting/description.service", new AuthenticatingHttpInvokerRequestExecutor());
271 270
    }
272 271

  
273 272
    @Override
274 273
    public IOccurrenceService getOccurrenceService(){
275
        return (IOccurrenceService) getService(IOccurrenceService.class, "/remoting/occurrence.service", new CdmServiceRequestExecutor());
274
        return (IOccurrenceService) getService(IOccurrenceService.class, "/remoting/occurrence.service", new AuthenticatingHttpInvokerRequestExecutor());
276 275
    }
277 276

  
278 277
    @Override
279 278
    public IPrimerService getPrimerService(){
280
        return (IPrimerService) getService(IPrimerService.class, "/remoting/primer.service", new CdmServiceRequestExecutor());
279
        return (IPrimerService) getService(IPrimerService.class, "/remoting/primer.service", new AuthenticatingHttpInvokerRequestExecutor());
281 280
    }
282 281

  
283 282
    @Override
284 283
    public IAmplificationService getAmplificationService(){
285
        return (IAmplificationService) getService(IAmplificationService.class, "/remoting/amplification.service", new CdmServiceRequestExecutor());
284
        return (IAmplificationService) getService(IAmplificationService.class, "/remoting/amplification.service", new AuthenticatingHttpInvokerRequestExecutor());
286 285
    }
287 286

  
288 287
    @Override
289 288
    public ISequenceService getSequenceService(){
290
        return (ISequenceService) getService(ISequenceService.class, "/remoting/sequence.service", new CdmServiceRequestExecutor());
289
        return (ISequenceService) getService(ISequenceService.class, "/remoting/sequence.service", new AuthenticatingHttpInvokerRequestExecutor());
291 290
    }
292 291

  
293 292
    @Override
294 293
    public IEventBaseService getEventBaseService() {
295
        return (IEventBaseService) getService(IEventBaseService.class, "/remoting/eventbase.service", new CdmServiceRequestExecutor());
294
        return (IEventBaseService) getService(IEventBaseService.class, "/remoting/eventbase.service", new AuthenticatingHttpInvokerRequestExecutor());
296 295
    }
297 296

  
298 297
    @Override
299 298
    public IMediaService getMediaService(){
300
        return (IMediaService) getService(IMediaService.class, "/remoting/media.service", new CdmServiceRequestExecutor());
299
        return (IMediaService) getService(IMediaService.class, "/remoting/media.service", new AuthenticatingHttpInvokerRequestExecutor());
301 300
    }
302 301

  
303 302
    @Override
304 303
    public ITermService getTermService(){
305
        return (ITermService) getService(ITermService.class, "/remoting/term.service", new CdmServiceRequestExecutor());
304
        return (ITermService) getService(ITermService.class, "/remoting/term.service", new AuthenticatingHttpInvokerRequestExecutor());
306 305
    }
307 306

  
308 307
    @Override
309 308
    public IRightsService getRightsService(){
310
        return (IRightsService) getService(IRightsService.class, "/remoting/rights.service", new CdmServiceRequestExecutor());
309
        return (IRightsService) getService(IRightsService.class, "/remoting/rights.service", new AuthenticatingHttpInvokerRequestExecutor());
311 310
    }
312 311

  
313 312
    @Override
314 313
    public ICommonService getCommonService(){
315
        return (ICommonService) getService(ICommonService.class, "/remoting/common.service", new CdmServiceRequestExecutor());
314
        return (ICommonService) getService(ICommonService.class, "/remoting/common.service", new AuthenticatingHttpInvokerRequestExecutor());
316 315
    }
317 316

  
318 317
    @Override
319 318
    public ILocationService getLocationService(){
320
        return (ILocationService) getService(ILocationService.class, "/remoting/location.service", new CdmServiceRequestExecutor());
319
        return (ILocationService) getService(ILocationService.class, "/remoting/location.service", new AuthenticatingHttpInvokerRequestExecutor());
321 320
    }
322 321

  
323 322
    @Override
324 323
    public IUserService getUserService(){
325
        return (IUserService) getService(IUserService.class, "/remoting-public/user.service", new CdmServiceRequestExecutor());
324
        return (IUserService) getService(IUserService.class, "/remoting-public/user.service", new AuthenticatingHttpInvokerRequestExecutor());
326 325
    }
327 326

  
328 327

  
......
341 340

  
342 341
    @Override
343 342
    public IGrantedAuthorityService getGrantedAuthorityService(){
344
        return (IGrantedAuthorityService) getService(IGrantedAuthorityService.class, "/remoting/grantedauthority.service", new CdmServiceRequestExecutor());
343
        return (IGrantedAuthorityService) getService(IGrantedAuthorityService.class, "/remoting/grantedauthority.service", new AuthenticatingHttpInvokerRequestExecutor());
345 344
    }
346 345

  
347 346

  
......
374 373

  
375 374
    @Override
376 375
    public ICollectionService getCollectionService(){
377
        return (ICollectionService) getService(ICollectionService.class, "/remoting/collection.service", new CdmServiceRequestExecutor());
376
        return (ICollectionService) getService(ICollectionService.class, "/remoting/collection.service", new AuthenticatingHttpInvokerRequestExecutor());
378 377
    }
379 378

  
380 379
    @Override
381 380
    public IFeatureTreeService getFeatureTreeService(){
382
        return (IFeatureTreeService) getService(IFeatureTreeService.class, "/remoting/featuretree.service", new CdmServiceRequestExecutor());
381
        return (IFeatureTreeService) getService(IFeatureTreeService.class, "/remoting/featuretree.service", new AuthenticatingHttpInvokerRequestExecutor());
383 382
    }
384 383
    @Override
385 384
    public ITermTreeService getTermTreeService() {
386
    	return (ITermTreeService) getService(ITermTreeService.class, "/remoting/termtree.service", new CdmServiceRequestExecutor());
385
    	return (ITermTreeService) getService(ITermTreeService.class, "/remoting/termtree.service", new AuthenticatingHttpInvokerRequestExecutor());
387 386
    }
388 387

  
389 388
    @Override
390 389
    public IFeatureNodeService getFeatureNodeService(){
391
        return (IFeatureNodeService) getService(IFeatureNodeService.class, "/remoting/featurenode.service", new CdmServiceRequestExecutor());
390
        return (IFeatureNodeService) getService(IFeatureNodeService.class, "/remoting/featurenode.service", new AuthenticatingHttpInvokerRequestExecutor());
392 391
    }
393 392

  
394 393
	@Override
395 394
	public ITermNodeService getTermNodeService() {
396
        return (ITermNodeService) getService(ITermNodeService.class, "/remoting/termnode.service", new CdmServiceRequestExecutor());
395
        return (ITermNodeService) getService(ITermNodeService.class, "/remoting/termnode.service", new AuthenticatingHttpInvokerRequestExecutor());
397 396
	}
398 397

  
399 398
    @Override
400 399
    public IVocabularyService getVocabularyService(){
401
        return (IVocabularyService) getService(IVocabularyService.class, "/remoting/vocabulary.service", new CdmServiceRequestExecutor());
400
        return (IVocabularyService) getService(IVocabularyService.class, "/remoting/vocabulary.service", new AuthenticatingHttpInvokerRequestExecutor());
402 401
    }
403 402

  
404 403
    @Override
405 404
    public IIdentificationKeyService getIdentificationKeyService(){
406
        return (IIdentificationKeyService) getService(IIdentificationKeyService.class, "/remoting/identificationkey.service", new CdmServiceRequestExecutor());
405
        return (IIdentificationKeyService) getService(IIdentificationKeyService.class, "/remoting/identificationkey.service", new AuthenticatingHttpInvokerRequestExecutor());
407 406
    }
408 407

  
409 408
    @Override
410 409
    public IPolytomousKeyService getPolytomousKeyService(){
411
        return (IPolytomousKeyService) getService(IPolytomousKeyService.class, "/remoting/polytomouskey.service", new CdmServiceRequestExecutor());
410
        return (IPolytomousKeyService) getService(IPolytomousKeyService.class, "/remoting/polytomouskey.service", new AuthenticatingHttpInvokerRequestExecutor());
412 411
    }
413 412

  
414 413

  
415 414
    @Override
416 415
    public IPolytomousKeyNodeService getPolytomousKeyNodeService(){
417
        return (IPolytomousKeyNodeService) getService(IPolytomousKeyNodeService.class, "/remoting/polytomouskeynode.service", new CdmServiceRequestExecutor());
416
        return (IPolytomousKeyNodeService) getService(IPolytomousKeyNodeService.class, "/remoting/polytomouskeynode.service", new AuthenticatingHttpInvokerRequestExecutor());
418 417
    }
419 418

  
420 419
    @Override
421 420
    public IProgressMonitorService getProgressMonitorService() {
422
        return (IProgressMonitorService) getService(IProgressMonitorService.class, "/remoting/progressmonitor.service", new CdmAuthenticatedHttpInvokerRequestExecutor());
421
        return (IProgressMonitorService) getService(IProgressMonitorService.class, "/remoting/progressmonitor.service", new AuthenticatingHttpInvokerRequestExecutor());
423 422
    }
424 423

  
425 424
    @Override
426 425
    public IDescriptiveDataSetService getDescriptiveDataSetService(){
427
        return (IDescriptiveDataSetService) getService(IDescriptiveDataSetService.class, "/remoting/descriptivedataset.service", new CdmServiceRequestExecutor());
426
        return (IDescriptiveDataSetService) getService(IDescriptiveDataSetService.class, "/remoting/descriptivedataset.service", new AuthenticatingHttpInvokerRequestExecutor());
428 427
    }
429 428

  
430 429
    /**
......
432 431
     */
433 432
    @Override
434 433
    public IRegistrationService getRegistrationService() {
435
        return (IRegistrationService) getService(IRegistrationService.class, "/remoting/registration.service", new CdmServiceRequestExecutor());
434
        return (IRegistrationService) getService(IRegistrationService.class, "/remoting/registration.service", new AuthenticatingHttpInvokerRequestExecutor());
436 435

  
437 436
    }
438 437

  
439 438
    @Override
440 439
    public IGroupService getGroupService(){
441
        return (IGroupService) getService(IGroupService.class, "/remoting/group.service", new CdmServiceRequestExecutor());
440
        return (IGroupService) getService(IGroupService.class, "/remoting/group.service", new AuthenticatingHttpInvokerRequestExecutor());
442 441
    }
443 442

  
444 443
    @Override
445 444
    public IPreferenceService getPreferenceService(){
446
        return (IPreferenceService) getService(IPreferenceService.class, "/remoting/preference.service", new CdmServiceRequestExecutor());
445
        return (IPreferenceService) getService(IPreferenceService.class, "/remoting/preference.service", new AuthenticatingHttpInvokerRequestExecutor());
447 446
    }
448 447

  
449 448

  
450 449
    @Override
451 450
    public IEntityValidationService getEntityValidationService(){
452
        return (IEntityValidationService) getService(IEntityValidationService.class, "/remoting/entityvalidation.service", new CdmServiceRequestExecutor());
451
        return (IEntityValidationService) getService(IEntityValidationService.class, "/remoting/entityvalidation.service", new AuthenticatingHttpInvokerRequestExecutor());
453 452
    }
454 453

  
455 454

  
456 455
    @Override
457 456
    public IEntityConstraintViolationService getEntityConstraintViolationService(){
458
        return (IEntityConstraintViolationService) getService(IEntityConstraintViolationService.class, "/remoting/entityconstraintviolation.service", new CdmServiceRequestExecutor());
457
        return (IEntityConstraintViolationService) getService(IEntityConstraintViolationService.class, "/remoting/entityconstraintviolation.service", new AuthenticatingHttpInvokerRequestExecutor());
459 458
    }
460 459

  
461 460
    @Override
......
509 508
    }
510 509

  
511 510
    public IIOService getIOService() {
512
        return (IIOService) getService(IIOService.class, "/remoting/io.service", new CdmServiceRequestExecutor());
511
        return (IIOService) getService(IIOService.class, "/remoting/io.service", new AuthenticatingHttpInvokerRequestExecutor());
513 512
    }
514 513

  
515 514
    @Override
516 515
    public ILongRunningTasksService getLongRunningTasksService() {
517
        return (ILongRunningTasksService) getService(ILongRunningTasksService.class, "/remoting/longrunningtasks.service", new CdmServiceRequestExecutor());
516
        return (ILongRunningTasksService) getService(ILongRunningTasksService.class, "/remoting/longrunningtasks.service", new AuthenticatingHttpInvokerRequestExecutor());
518 517
    }
519 518

  
520 519
    public ITestService getTestService() {
521
        return (ITestService) getService(ITestService.class, "/remoting/test.service", new CdmServiceRequestExecutor());
520
        return (ITestService) getService(ITestService.class, "/remoting/test.service", new AuthenticatingHttpInvokerRequestExecutor());
522 521
    }
523 522

  
524 523
}
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationState.java
52 52

  
53 53
    private ICdmDataChangeService dataChangeService;
54 54

  
55
    //FIXME SecurityContextHolder.getContext()
55 56
    private SecurityContext securityContext;
56 57

  
57 58
    private static CdmServiceCacher cdmServiceCacher;
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/AuthenticatingHttpInvokerRequestExecutor.java
1
/**
2
 * Copyright (C) 2015 EDIT
3
 * European Distributed Institute of Taxonomy
4
 * http://www.e-taxonomy.eu
5
 *
6
 * The contents of this file are subject to the Mozilla Public License Version 1.1
7
 * See LICENSE.TXT at the top of this package for the full license terms.
8
 */
9
package eu.etaxonomy.taxeditor.service;
10

  
11
import java.io.IOException;
12

  
13
import org.apache.commons.codec.binary.Base64;
14
import org.apache.http.client.methods.HttpPost;
15
import org.springframework.remoting.httpinvoker.HttpInvokerClientConfiguration;
16
import org.springframework.security.core.Authentication;
17
import org.springframework.security.core.context.SecurityContext;
18
import org.springframework.security.core.context.SecurityContextHolder;
19

  
20
/**
21
 * @author cmathew
22
 * @date 27 Jan 2015
23
 *
24
 */
25
public class AuthenticatingHttpInvokerRequestExecutor extends TimestampingHttpInvokerRequestExecutor {
26

  
27
    @Override
28
    protected HttpPost createHttpPost(HttpInvokerClientConfiguration config) throws IOException {
29
    	HttpPost postMethod = super.createHttpPost(config);
30

  
31
        SecurityContext securityContext = SecurityContextHolder.getContext();
32
        if(securityContext != null) {
33
            Authentication auth = securityContext.getAuthentication();
34
            if ((auth != null) && (auth.getName() != null) &&
35
                    (auth.getCredentials() != null)) {
36
                String base64 = auth.getName() + ":" + auth.getCredentials().toString();
37
                postMethod.setHeader("Authorization", "Basic " +
38
                        new String(Base64.encodeBase64(base64.getBytes())));
39
            }
40
        }
41
        return postMethod;
42
    }
43

  
44
}
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/CdmAuthenticatedHttpInvokerRequestExecutor.java
1
/**
2
 * Copyright (C) 2015 EDIT
3
 * European Distributed Institute of Taxonomy
4
 * http://www.e-taxonomy.eu
5
 *
6
 * The contents of this file are subject to the Mozilla Public License Version 1.1
7
 * See LICENSE.TXT at the top of this package for the full license terms.
8
 */
9
package eu.etaxonomy.taxeditor.service;
10

  
11
import java.io.IOException;
12

  
13
import org.apache.commons.codec.binary.Base64;
14
import org.apache.http.client.methods.HttpPost;
15
import org.springframework.remoting.httpinvoker.HttpInvokerClientConfiguration;
16
import org.springframework.security.core.Authentication;
17
import org.springframework.security.core.context.SecurityContext;
18

  
19
import eu.etaxonomy.cdm.api.application.CdmApplicationState;
20

  
21
/**
22
 * @author cmathew
23
 * @date 27 Jan 2015
24
 *
25
 */
26
public class CdmAuthenticatedHttpInvokerRequestExecutor extends TimestampingHttpInvokerRequestExecutor {
27

  
28
    @Override
29
    protected HttpPost createHttpPost(HttpInvokerClientConfiguration config) throws IOException {
30
    	HttpPost postMethod = super.createHttpPost(config);
31

  
32
        SecurityContext securityContext = CdmApplicationState.getCurrentSecurityContext();
33
        if(securityContext != null) {
34
            Authentication auth = securityContext.getAuthentication();
35
            if ((auth != null) && (auth.getName() != null) &&
36
                    (auth.getCredentials() != null)) {
37
                String base64 = auth.getName() + ":" + auth.getCredentials().toString();
38
                postMethod.setHeader("Authorization", "Basic " +
39
                        new String(Base64.encodeBase64(base64.getBytes())));
40
            }
41
        }
42
        return postMethod;
43
    }
44

  
45
}
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/CdmServiceRequestExecutor.java
1
package eu.etaxonomy.taxeditor.service;
2

  
3
// @Component
4
public class CdmServiceRequestExecutor extends CdmAuthenticatedHttpInvokerRequestExecutor {
5

  
6

  
7
}
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/TermServiceRequestExecutor.java
1
package eu.etaxonomy.taxeditor.service;
2

  
3
import java.util.HashMap;
4
import java.util.Map;
5

  
6
import org.apache.log4j.Logger;
7
import org.springframework.remoting.support.RemoteInvocationResult;
8

  
9
import eu.etaxonomy.cdm.api.cache.CdmServiceCacher;
10
import eu.etaxonomy.cdm.model.term.TermType;
11

  
12

  
13
public class TermServiceRequestExecutor extends CdmServiceRequestExecutor {
14
    private static final Logger logger = Logger.getLogger(TermServiceRequestExecutor.class);
15

  
16
	private static Map<TermType, RemoteInvocationResult> termTypeMap = new HashMap<>();
17

  
18
	private static CdmServiceCacher cdmServiceCacher;
19

  
20
	public static void setDefaultCacher(CdmServiceCacher csc) {
21
        cdmServiceCacher = csc;
22
    }
23

  
24
}

Also available in: Unified diff