mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
javelin is revived
This commit is contained in:
parent
112143def6
commit
0a7d03c90b
37
framework/pom.xml
Normal file
37
framework/pom.xml
Normal file
@ -0,0 +1,37 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>cloudstack-framework</artifactId>
|
||||
<name>Apache CloudStack framework POM</name>
|
||||
<packaging>pom</packaging>
|
||||
<parent>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloudstack</artifactId>
|
||||
<version>4.1.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
<testSourceDirectory>test</testSourceDirectory>
|
||||
</build>
|
||||
<modules>
|
||||
<module>ipc</module>
|
||||
</modules>
|
||||
</project>
|
||||
@ -1,24 +1,24 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>cloud-platform-api</artifactId>
|
||||
<name>Apache CloudStack platform API</name>
|
||||
<parent>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloudstack</artifactId>
|
||||
<version>4.0.0-SNAPSHOT</version>
|
||||
<relativePath>../../parent/pom.xml</relativePath>
|
||||
</parent>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloudstack</artifactId>
|
||||
<version>4.1.0-SNAPSHOT</version>
|
||||
<relativePath>../../parent/pom.xml</relativePath>
|
||||
</parent>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
<!-- <testSourceDirectory>test</testSourceDirectory> -->
|
||||
</build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
<!-- <testSourceDirectory>test</testSourceDirectory> -->
|
||||
</build>
|
||||
</project>
|
||||
@ -21,7 +21,6 @@ package org.apache.cloudstack.platform.subsystem.api.storage;
|
||||
import com.cloud.agent.api.to.StorageFilerTO;
|
||||
import com.cloud.storage.Snapshot;
|
||||
import com.cloud.storage.Storage.StoragePoolType;
|
||||
import com.cloud.storage.TemplateProfile;
|
||||
import com.cloud.storage.Volume;
|
||||
import com.cloud.template.VirtualMachineTemplate;
|
||||
|
||||
|
||||
@ -20,18 +20,16 @@ package org.apache.cloudstack.platform.subsystem.api.storage;
|
||||
|
||||
import com.cloud.agent.api.Answer;
|
||||
import com.cloud.agent.api.Command;
|
||||
import com.cloud.storage.TemplateProfile;
|
||||
import com.cloud.vm.DiskProfile;
|
||||
|
||||
public interface DataStoreDriver {
|
||||
String getDriverType();
|
||||
TemplateProfile install(TemplateProfile tp, DataStoreEndPoint ep);
|
||||
TemplateProfile register(TemplateProfile tp, DataStoreEndPoint ep);
|
||||
DiskProfile createVolumeFromTemplate(DiskProfile volProfile, TemplateProfile tp, DataStoreEndPoint ep);
|
||||
DataObject create(DataObject obj);
|
||||
DataObject copy(DataObject src, DataStore dest);
|
||||
DataObject copy(DataObject src, DataObject dest);
|
||||
DataObject move(DataObject src, DataObject dest);
|
||||
VolumeProfile createVolumeFromTemplate(VolumeProfile vol, TemplateProfile tp, DataStoreEndPoint dp);
|
||||
Answer sendMessage(DataStoreEndPoint dsep, Command cmd);
|
||||
boolean delete(DataObject obj);
|
||||
}
|
||||
|
||||
@ -14,13 +14,13 @@
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.template;
|
||||
package org.apache.cloudstack.platform.subsystem.api.storage;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||
import com.cloud.storage.Storage.ImageFormat;
|
||||
import com.cloud.storage.VMTemplateVO;
|
||||
import com.cloud.template.VirtualMachineTemplate;
|
||||
|
||||
public class TemplateProfile {
|
||||
Long userId;
|
||||
@ -44,7 +44,7 @@ public class TemplateProfile {
|
||||
String chksum;
|
||||
Boolean bootable;
|
||||
Long templateId;
|
||||
VMTemplateVO template;
|
||||
VirtualMachineTemplate template;
|
||||
String templateTag;
|
||||
Map details;
|
||||
|
||||
@ -75,7 +75,7 @@ public class TemplateProfile {
|
||||
this.sshKeyEnbaled = sshKeyEnabled;
|
||||
}
|
||||
|
||||
public TemplateProfile(Long userId, VMTemplateVO template, Long zoneId) {
|
||||
public TemplateProfile(Long userId, VirtualMachineTemplate template, Long zoneId) {
|
||||
this.userId = userId;
|
||||
this.template = template;
|
||||
this.zoneId = zoneId;
|
||||
@ -222,10 +222,10 @@ public class TemplateProfile {
|
||||
this.bootable = bootable;
|
||||
}
|
||||
|
||||
public VMTemplateVO getTemplate() {
|
||||
public VirtualMachineTemplate getTemplate() {
|
||||
return template;
|
||||
}
|
||||
public void setTemplate(VMTemplateVO template) {
|
||||
public void setTemplate(VirtualMachineTemplate template) {
|
||||
this.template = template;
|
||||
}
|
||||
|
||||
@ -252,4 +252,36 @@ public class TemplateProfile {
|
||||
public Boolean getSshKeyEnabled() {
|
||||
return this.sshKeyEnbaled;
|
||||
}
|
||||
|
||||
public String getImageStorageUri() {
|
||||
return null;
|
||||
}
|
||||
|
||||
public void setLocalPath(String path) {
|
||||
|
||||
}
|
||||
|
||||
public String getLocalPath() {
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getJobId() {
|
||||
return null;
|
||||
}
|
||||
|
||||
public void setTemplatePoolRefId(long id) {
|
||||
|
||||
}
|
||||
|
||||
public long getId() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long getTemplatePoolRefId() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long getSize() {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package org.apache.cloudstack.platform.subsystem.api.storage;
|
||||
|
||||
import com.cloud.agent.api.storage.DownloadCommand.Proxy;
|
||||
import com.cloud.storage.TemplateProfile;
|
||||
|
||||
public interface TemplateStrategy {
|
||||
TemplateProfile install(TemplateProfile tp);
|
||||
|
||||
40
platform/pom.xml
Normal file
40
platform/pom.xml
Normal file
@ -0,0 +1,40 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>cloudstack-platform</artifactId>
|
||||
<name>Apache CloudStack platform POM</name>
|
||||
<packaging>pom</packaging>
|
||||
<parent>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloudstack</artifactId>
|
||||
<version>4.1.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
<testSourceDirectory>test</testSourceDirectory>
|
||||
</build>
|
||||
<modules>
|
||||
<module>api</module>
|
||||
<module>compute</module>
|
||||
<module>orchestration</module>
|
||||
<module>storage</module>
|
||||
</modules>
|
||||
</project>
|
||||
@ -1,38 +1,38 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>cloud-platform-storage</artifactId>
|
||||
<name>Apache CloudStack Platform Storage</name>
|
||||
<parent>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloudstack</artifactId>
|
||||
<version>4.0.0-SNAPSHOT</version>
|
||||
<relativePath>../../parent/pom.xml</relativePath>
|
||||
</parent>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloudstack</artifactId>
|
||||
<version>4.1.0-SNAPSHOT</version>
|
||||
<relativePath>../../parent/pom.xml</relativePath>
|
||||
</parent>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-core</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-server</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-platform-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-core</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-server</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-platform-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
<!-- <testSourceDirectory>test</testSourceDirectory> -->
|
||||
</build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
</build>
|
||||
</project>
|
||||
@ -4,6 +4,7 @@ import java.util.Map;
|
||||
|
||||
import javax.naming.ConfigurationException;
|
||||
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.StorageProvider;
|
||||
|
||||
import com.cloud.utils.component.Manager;
|
||||
@ -36,4 +37,19 @@ public class StorageProviderManagerImpl implements StorageProviderManager, Manag
|
||||
return null;
|
||||
}
|
||||
|
||||
public StorageProvider getProvider(long poolId) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public StorageProvider getBackupStorageProvider(long zoneId) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public DataStore getDataStore(long poolId) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -6,10 +6,19 @@ import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreDriver;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPointSelector;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreLifeCycle;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.FileSystem;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.SnapshotProfile;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.SnapshotStrategy;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.StorageProvider;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateStrategy;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.VolumeProfile;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.VolumeStrategy;
|
||||
|
||||
import com.cloud.agent.api.to.StorageFilerTO;
|
||||
import com.cloud.storage.Snapshot;
|
||||
import com.cloud.storage.Storage.StoragePoolType;
|
||||
import com.cloud.storage.Volume;
|
||||
|
||||
public class DefaultDataStore implements DataStore {
|
||||
protected VolumeStrategy _volumeStrategy;
|
||||
protected SnapshotStrategy _snapshotStrategy;
|
||||
@ -137,4 +146,84 @@ public class DefaultDataStore implements DataStore {
|
||||
public void setLifeCycle(DataStoreLifeCycle lf) {
|
||||
this._dslf = lf;
|
||||
}
|
||||
|
||||
public long getCluterId() {
|
||||
// TODO Auto-generated method stub
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long getPodId() {
|
||||
// TODO Auto-generated method stub
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long getZoneId() {
|
||||
// TODO Auto-generated method stub
|
||||
return 0;
|
||||
}
|
||||
|
||||
public String getPath() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public StoragePoolType getPoolType() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean isSharedStorage() {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public StorageProvider getProvider() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public DataStoreEndPointSelector getEndPointSelector() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public VolumeProfile prepareVolume(Volume volume, DataStore destStore) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public SnapshotProfile prepareSnapshot(Snapshot snapshot, DataStore destStore) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public TemplateProfile prepareTemplate(long templateId, DataStore destStore) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean contains(Volume volume) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean contains(Snapshot snapshot) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean contains(TemplateProfile template) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public TemplateProfile get(TemplateProfile template) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public StorageFilerTO getTO() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,10 +5,8 @@ import java.util.Map;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore.StoreType;
|
||||
import org.apache.cloudstack.storage.datastore.DefaultDataStore;
|
||||
import org.apache.cloudstack.storage.datastore.XenDataStoreDriver;
|
||||
import org.apache.cloudstack.storage.driver.XenServerStorageDriver;
|
||||
import org.apache.cloudstack.storage.epselector.DefaultPrimaryEndpointSelector;
|
||||
import org.apache.cloudstack.storage.filesystem.DefaultFileSystem;
|
||||
import org.apache.cloudstack.storage.lifecycle.DefaultPrimaryDataStoreLifeCycle;
|
||||
import org.apache.cloudstack.storage.strategy.XenBackupStrategy;
|
||||
import org.apache.cloudstack.storage.strategy.XenSnapshotStrategy;
|
||||
|
||||
@ -21,22 +21,14 @@ package org.apache.cloudstack.storage.driver;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreDriver;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPoint;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.VolumeProfile;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile;
|
||||
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateStrategy;
|
||||
import com.cloud.agent.api.storage.DownloadProgressCommand;
|
||||
import com.cloud.agent.api.storage.DownloadProgressCommand.RequestType;
|
||||
import com.cloud.agent.api.Answer;
|
||||
import com.cloud.agent.api.storage.CreateAnswer;
|
||||
import com.cloud.agent.api.storage.CreateCommand;
|
||||
import com.cloud.agent.api.storage.DownloadCommand;
|
||||
import com.cloud.agent.api.storage.PrimaryStorageDownloadAnswer;
|
||||
import com.cloud.agent.api.storage.PrimaryStorageDownloadCommand;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
import com.cloud.storage.TemplateProfile;
|
||||
import com.cloud.vm.DiskProfile;
|
||||
|
||||
|
||||
|
||||
public abstract class AbstractStorageDriver implements DataStoreDriver {
|
||||
protected DataStore _ds;
|
||||
@ -70,14 +62,15 @@ public abstract class AbstractStorageDriver implements DataStoreDriver {
|
||||
ep.sendCommand(dcmd);
|
||||
return tp;
|
||||
}
|
||||
|
||||
public DiskProfile createVolumeFromTemplate(DiskProfile volProfile, TemplateProfile tp, DataStoreEndPoint ep) {
|
||||
/*
|
||||
public VolumeProfile createVolumeFromTemplate(VolumeProfile volProfile, TemplateProfile tp, DataStoreEndPoint ep) {
|
||||
CreateCommand cmd = new CreateCommand(volProfile, tp.getLocalPath(), _ds.getTO());
|
||||
CreateAnswer ans = (CreateAnswer)ep.sendCommand(cmd);
|
||||
VolumeTO created = ans.getVolume();
|
||||
DiskProfile diskProfile = new DiskProfile(volProfile);
|
||||
DiskProfile diskProfile = new VolumeProfile(volProfile);
|
||||
diskProfile.setPath(created.getPath());
|
||||
diskProfile.setSize(created.getSize());
|
||||
return diskProfile;
|
||||
}
|
||||
return null;
|
||||
}*/
|
||||
}
|
||||
|
||||
@ -21,6 +21,7 @@ package org.apache.cloudstack.storage.driver;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataObject;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPoint;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.VolumeProfile;
|
||||
|
||||
import com.cloud.agent.api.Answer;
|
||||
import com.cloud.agent.api.Command;
|
||||
@ -76,4 +77,14 @@ public class DefaultNfsSecondaryDriver extends AbstractStorageDriver {
|
||||
return false;
|
||||
}
|
||||
|
||||
public org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile register(org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile tp, DataStoreEndPoint ep) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public VolumeProfile createVolumeFromTemplate(VolumeProfile vol, org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile tp, DataStoreEndPoint dp) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -21,13 +21,16 @@ package org.apache.cloudstack.storage.driver;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataObject;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPoint;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.VolumeProfile;
|
||||
|
||||
import com.cloud.agent.api.Answer;
|
||||
import com.cloud.agent.api.Command;
|
||||
|
||||
|
||||
public class XenServerStorageDriver extends AbstractStorageDriver {
|
||||
protected DataStore _ds;
|
||||
public XenServerStorageDriver(DataStore ds) {
|
||||
super(ds);
|
||||
_ds = ds;
|
||||
}
|
||||
|
||||
@ -66,4 +69,13 @@ public class XenServerStorageDriver extends AbstractStorageDriver {
|
||||
return false;
|
||||
}
|
||||
|
||||
public org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile register(org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile tp, DataStoreEndPoint ep) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public VolumeProfile createVolumeFromTemplate(VolumeProfile vol, org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile tp, DataStoreEndPoint dp) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,6 +6,7 @@ import java.util.List;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPoint;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPointSelector;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.StorageEvent;
|
||||
|
||||
import com.cloud.host.Host;
|
||||
import com.cloud.host.HostVO;
|
||||
@ -31,4 +32,9 @@ public class DefaultPrimaryEndpointSelector implements
|
||||
}
|
||||
return dseps;
|
||||
}
|
||||
|
||||
public List<DataStoreEndPoint> getEndPoints(StorageEvent event) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@ -19,14 +19,14 @@
|
||||
package org.apache.cloudstack.storage.image;
|
||||
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile;
|
||||
|
||||
|
||||
import com.cloud.api.commands.RegisterTemplateCmd;
|
||||
|
||||
import com.cloud.storage.TemplateProfile;
|
||||
|
||||
public interface ImageManager {
|
||||
TemplateProfile AssociateTemplateStoragePool(TemplateProfile tp, DataStore ds);
|
||||
TemplateProfile getProfile(long templateId);
|
||||
com.cloud.storage.TemplateProfile allocateTemplateInDB(RegisterTemplateCmd cmd);
|
||||
TemplateProfile allocateTemplateInDB(RegisterTemplateCmd cmd);
|
||||
}
|
||||
|
||||
@ -21,6 +21,7 @@ package org.apache.cloudstack.storage.image;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import com.cloud.api.commands.RegisterTemplateCmd;
|
||||
@ -28,7 +29,6 @@ import com.cloud.dc.DataCenterVO;
|
||||
import com.cloud.dc.dao.DataCenterDao;
|
||||
import com.cloud.storage.Storage.ImageFormat;
|
||||
import com.cloud.storage.Storage.TemplateType;
|
||||
import com.cloud.storage.TemplateProfile;
|
||||
import com.cloud.storage.VMTemplateHostVO;
|
||||
import com.cloud.storage.VMTemplateStoragePoolVO;
|
||||
import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
|
||||
@ -161,7 +161,7 @@ public class ImageManagerImpl implements ImageManager {
|
||||
|
||||
public TemplateProfile allocateTemplateInDB(RegisterTemplateCmd cmd) {
|
||||
parameterCheck(cmd);
|
||||
TemplateProfile tp = new TemplateProfile(cmd);
|
||||
return persistTemplate(tp);
|
||||
//TemplateProfile tp = new TemplateProfile(cmd);
|
||||
return persistTemplate(null);
|
||||
}
|
||||
}
|
||||
|
||||
@ -79,7 +79,7 @@ public class DefaultPrimaryDataStoreLifeCycle implements DataStoreLifeCycle {
|
||||
|
||||
public void add() {
|
||||
DataStoreEndPointSelector dseps = _ds.getEndPointSelector();
|
||||
List<DataStoreEndPoint> dsep = dseps.getEndPoints();
|
||||
List<DataStoreEndPoint> dsep = dseps.getEndPoints(null);
|
||||
boolean success = false;
|
||||
StoragePoolVO spool = _storagePoolDao.findById(_ds.getId());
|
||||
for (DataStoreEndPoint ep : dsep) {
|
||||
|
||||
@ -18,6 +18,49 @@
|
||||
*/
|
||||
package org.apache.cloudstack.storage.manager;
|
||||
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataObjectBackupStorageOperationState.Event;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStore;
|
||||
|
||||
import com.cloud.storage.Snapshot;
|
||||
import com.cloud.storage.Volume;
|
||||
import com.cloud.template.VirtualMachineTemplate;
|
||||
import com.cloud.utils.fsm.NoTransitionException;
|
||||
|
||||
public class BackupStorageManagerImpl implements BackupStorageManager {
|
||||
|
||||
public boolean contains(Volume vol) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean contains(Snapshot snapshot) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean contains(VirtualMachineTemplate template) {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public DataStore getBackupDataStore(Volume vol) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public DataStore getBackupDataStore(Snapshot snapshot) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public DataStore getBackupDataStore(VirtualMachineTemplate template) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean updateOperationState(Volume vol, Event event) throws NoTransitionException {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -48,4 +48,9 @@ public class SecondaryStorageManagerImpl implements SecondaryStorageManager {
|
||||
return null;
|
||||
}
|
||||
|
||||
public List<DataStore> getImageStores(long zoneId) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -136,4 +136,9 @@ public class DefaultPrimaryStorageProvider implements StorageProvider {
|
||||
return ds;
|
||||
}
|
||||
|
||||
public List<StoreType> supportedStoreTypes() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -28,6 +28,7 @@ import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPoint;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.DataStoreEndPointSelector;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.StorageEvent;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.StorageProvider;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateProfile;
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.TemplateStrategy;
|
||||
import org.apache.cloudstack.storage.image.ImageManager;
|
||||
import org.apache.log4j.Logger;
|
||||
@ -36,7 +37,6 @@ import com.cloud.agent.api.storage.DownloadCommand.Proxy;
|
||||
import com.cloud.exception.InvalidParameterValueException;
|
||||
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||
import com.cloud.storage.Storage.ImageFormat;
|
||||
import com.cloud.storage.TemplateProfile;
|
||||
import com.cloud.storage.VMTemplateHostVO;
|
||||
import com.cloud.storage.VMTemplateStoragePoolVO;
|
||||
import com.cloud.storage.VMTemplateStorageResourceAssoc;
|
||||
|
||||
@ -18,6 +18,8 @@
|
||||
*/
|
||||
package org.apache.cloudstack.storage.volume;
|
||||
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.VolumeProfile;
|
||||
|
||||
import com.cloud.storage.VolumeVO;
|
||||
import com.cloud.storage.Volume;
|
||||
import com.cloud.storage.dao.VolumeDao;
|
||||
@ -47,4 +49,22 @@ public class VolumeManagerImpl implements VolumeManager {
|
||||
_volStateMachine.transitTo(vol, event, null, _volumeDao);
|
||||
return _volumeDao.findById(vol.getId());
|
||||
}
|
||||
|
||||
|
||||
public VolumeProfile getProfile(long volumeId) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public VolumeVO getVolume(long volumeId) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public VolumeVO updateVolume(VolumeVO volume) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,9 @@
|
||||
*/
|
||||
package org.apache.cloudstack.storage.volume;
|
||||
|
||||
import org.apache.cloudstack.platform.subsystem.api.storage.Volume;
|
||||
|
||||
import com.cloud.api.commands.CreateVolumeCmd;
|
||||
import com.cloud.storage.Volume;
|
||||
|
||||
public interface VolumeService {
|
||||
/**
|
||||
|
||||
2
pom.xml
2
pom.xml
@ -158,6 +158,8 @@
|
||||
<module>patches</module>
|
||||
<module>client</module>
|
||||
<module>test</module>
|
||||
<module>platform</module>
|
||||
<module>framework</module>
|
||||
</modules>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@ -26,11 +26,6 @@
|
||||
<version>4.1.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-platform-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cloudstack</groupId>
|
||||
<artifactId>cloud-core</artifactId>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user