summaryrefslogtreecommitdiff
path: root/modules/CIAO/ciao/Deployment_TargetManager.idl
blob: 78723ab3b3d850937dcf50331e0b4044b3e5373e (plain)
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
// $Id$

#ifndef TARGETMANAGER_IDL
#define TARGETMANAGER_IDL

#include "ciao/Deployment_Target_Data.idl"
#include "ciao/Deployment_TargetData.idl"
#include "ciao/Deployment_DeploymentPlan.idl"
// Only needed for ResourceNotAvailable but that should go, so this include also
#include "ciao/Deployment_ApplicationManager.idl"

module Deployment {

  /// @todo, UpdateAvailable is not in the spec, must be UpdateDynamic
  enum DomainUpdateKind {
    Add,
    Delete,
    UpdateAll,
    UpdateAvailable
  };

  /**
   * @todo The ResourceCommitmentManager is part of 06-04-01 and this is not
   * part of the Target Manager yet
   */
  interface TargetManager {
    Domain getAllResources ();
    Domain getAvailableResources ();
    /// @todo 06-04-01 specifies this differently
    void commitResources (in DeploymentPlan plan)
      raises (ResourceNotAvailable, PlanError);
    /// @todo This is not part of 06-04-01
    void releaseResources (in DeploymentPlan argname);
    void updateDomain (in ::CORBA::StringSeq elements,
                       in Domain domainSubset,
                       in DomainUpdateKind updateKind);
  };
};

#endif /* TARGETMANAGER_IDL */