mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Resource metadata support for customer gateway
Conflicts: server/src/com/cloud/tags/TaggedResourceManagerImpl.java
This commit is contained in:
parent
cf84733f8b
commit
9a21afb50b
@ -47,7 +47,8 @@ public interface ResourceTag extends ControlledEntity, Identity, InternalIdentit
|
|||||||
Storage(false, true),
|
Storage(false, true),
|
||||||
PrivateGateway(false, true),
|
PrivateGateway(false, true),
|
||||||
NetworkACLList(false, true),
|
NetworkACLList(false, true),
|
||||||
VpnGateway(false, true);
|
VpnGateway(false, true),
|
||||||
|
CustomerGateway(false, true);
|
||||||
|
|
||||||
ResourceObjectType(boolean resourceTagsSupport, boolean resourceMetadataSupport) {
|
ResourceObjectType(boolean resourceTagsSupport, boolean resourceMetadataSupport) {
|
||||||
this.resourceTagsSupport = resourceTagsSupport;
|
this.resourceTagsSupport = resourceTagsSupport;
|
||||||
|
|||||||
@ -328,7 +328,7 @@
|
|||||||
<bean id="NetworkACLListDetailsDaoImpl" class="org.apache.cloudstack.resourcedetail.dao.NetworkACLListDetailsDaoImpl" />
|
<bean id="NetworkACLListDetailsDaoImpl" class="org.apache.cloudstack.resourcedetail.dao.NetworkACLListDetailsDaoImpl" />
|
||||||
<bean id="NetworkACLItemDetailsDaoImpl" class="org.apache.cloudstack.resourcedetail.dao.NetworkACLItemDetailsDaoImpl" />
|
<bean id="NetworkACLItemDetailsDaoImpl" class="org.apache.cloudstack.resourcedetail.dao.NetworkACLItemDetailsDaoImpl" />
|
||||||
<bean id="Site2SiteVpnGatewayDetailsDaoImpl" class="org.apache.cloudstack.resourcedetail.dao.Site2SiteVpnGatewayDetailsDaoImpl" />
|
<bean id="Site2SiteVpnGatewayDetailsDaoImpl" class="org.apache.cloudstack.resourcedetail.dao.Site2SiteVpnGatewayDetailsDaoImpl" />
|
||||||
|
<bean id="Site2SiteCustomerGatewayDetailsDaoImpl" class="org.apache.cloudstack.resourcedetail.dao.Site2SiteCustomerGatewayDetailsDaoImpl" />
|
||||||
<bean id="databaseIntegrityChecker" class="com.cloud.upgrade.DatabaseIntegrityChecker" />
|
<bean id="databaseIntegrityChecker" class="com.cloud.upgrade.DatabaseIntegrityChecker" />
|
||||||
|
|
||||||
</beans>
|
</beans>
|
||||||
|
|||||||
@ -0,0 +1,81 @@
|
|||||||
|
// 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.
|
||||||
|
package org.apache.cloudstack.resourcedetail;
|
||||||
|
|
||||||
|
import javax.persistence.Column;
|
||||||
|
import javax.persistence.Entity;
|
||||||
|
import javax.persistence.GeneratedValue;
|
||||||
|
import javax.persistence.GenerationType;
|
||||||
|
import javax.persistence.Id;
|
||||||
|
import javax.persistence.Table;
|
||||||
|
|
||||||
|
import org.apache.cloudstack.api.ResourceDetail;
|
||||||
|
|
||||||
|
@Entity
|
||||||
|
@Table(name = "s2s_customer_gateway_details")
|
||||||
|
public class Site2SiteCustomerGatewayDetailVO implements ResourceDetail {
|
||||||
|
@Id
|
||||||
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||||
|
@Column(name = "id")
|
||||||
|
private long id;
|
||||||
|
|
||||||
|
@Column(name = "s2s_customer_gateway_id")
|
||||||
|
private long resourceId;
|
||||||
|
|
||||||
|
@Column(name = "name")
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
@Column(name = "value", length = 1024)
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
@Column(name = "display")
|
||||||
|
private boolean display;
|
||||||
|
|
||||||
|
public Site2SiteCustomerGatewayDetailVO() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Site2SiteCustomerGatewayDetailVO(long id, String name, String value) {
|
||||||
|
this.resourceId = id;
|
||||||
|
this.name = name;
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long getResourceId() {
|
||||||
|
return resourceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isDisplay() {
|
||||||
|
return display;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
// 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.
|
||||||
|
package org.apache.cloudstack.resourcedetail.dao;
|
||||||
|
|
||||||
|
import org.apache.cloudstack.resourcedetail.ResourceDetailsDao;
|
||||||
|
import org.apache.cloudstack.resourcedetail.Site2SiteCustomerGatewayDetailVO;
|
||||||
|
|
||||||
|
import com.cloud.utils.db.GenericDao;
|
||||||
|
|
||||||
|
public interface Site2SiteCustomerGatewayDetailsDao extends GenericDao<Site2SiteCustomerGatewayDetailVO, Long>, ResourceDetailsDao<Site2SiteCustomerGatewayDetailVO> {
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,33 @@
|
|||||||
|
// 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.
|
||||||
|
package org.apache.cloudstack.resourcedetail.dao;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
|
||||||
|
import org.apache.cloudstack.resourcedetail.ResourceDetailsDaoBase;
|
||||||
|
import org.apache.cloudstack.resourcedetail.Site2SiteCustomerGatewayDetailVO;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
@Local(value = {Site2SiteCustomerGatewayDetailsDao.class})
|
||||||
|
public class Site2SiteCustomerGatewayDetailsDaoImpl extends ResourceDetailsDaoBase<Site2SiteCustomerGatewayDetailVO> implements Site2SiteCustomerGatewayDetailsDao {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addDetail(long resourceId, String key, String value) {
|
||||||
|
super.addDetail(new Site2SiteCustomerGatewayDetailVO(resourceId, key, value));
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -30,6 +30,7 @@ import org.apache.cloudstack.resourcedetail.dao.FirewallRuleDetailsDao;
|
|||||||
import org.apache.cloudstack.resourcedetail.dao.NetworkACLItemDetailsDao;
|
import org.apache.cloudstack.resourcedetail.dao.NetworkACLItemDetailsDao;
|
||||||
import org.apache.cloudstack.resourcedetail.dao.NetworkACLListDetailsDao;
|
import org.apache.cloudstack.resourcedetail.dao.NetworkACLListDetailsDao;
|
||||||
import org.apache.cloudstack.resourcedetail.dao.RemoteAccessVpnDetailsDao;
|
import org.apache.cloudstack.resourcedetail.dao.RemoteAccessVpnDetailsDao;
|
||||||
|
import org.apache.cloudstack.resourcedetail.dao.Site2SiteCustomerGatewayDetailsDao;
|
||||||
import org.apache.cloudstack.resourcedetail.dao.Site2SiteVpnGatewayDetailsDao;
|
import org.apache.cloudstack.resourcedetail.dao.Site2SiteVpnGatewayDetailsDao;
|
||||||
import org.apache.cloudstack.resourcedetail.dao.UserIpAddressDetailsDao;
|
import org.apache.cloudstack.resourcedetail.dao.UserIpAddressDetailsDao;
|
||||||
import org.apache.cloudstack.resourcedetail.dao.VpcDetailsDao;
|
import org.apache.cloudstack.resourcedetail.dao.VpcDetailsDao;
|
||||||
@ -95,6 +96,8 @@ public class ResourceMetaDataManagerImpl extends ManagerBase implements Resource
|
|||||||
NetworkACLItemDetailsDao _networkACLDetailsDao;
|
NetworkACLItemDetailsDao _networkACLDetailsDao;
|
||||||
@Inject
|
@Inject
|
||||||
Site2SiteVpnGatewayDetailsDao _vpnGatewayDetailsDao;
|
Site2SiteVpnGatewayDetailsDao _vpnGatewayDetailsDao;
|
||||||
|
@Inject
|
||||||
|
Site2SiteCustomerGatewayDetailsDao _customerGatewayDetailsDao;
|
||||||
|
|
||||||
|
|
||||||
private static Map<ResourceObjectType, ResourceDetailsDao<? extends ResourceDetail>> _daoMap =
|
private static Map<ResourceObjectType, ResourceDetailsDao<? extends ResourceDetail>> _daoMap =
|
||||||
@ -120,6 +123,7 @@ public class ResourceMetaDataManagerImpl extends ManagerBase implements Resource
|
|||||||
_daoMap.put(ResourceObjectType.NetworkACLList, _networkACLListDetailsDao);
|
_daoMap.put(ResourceObjectType.NetworkACLList, _networkACLListDetailsDao);
|
||||||
_daoMap.put(ResourceObjectType.NetworkACL, _networkACLDetailsDao);
|
_daoMap.put(ResourceObjectType.NetworkACL, _networkACLDetailsDao);
|
||||||
_daoMap.put(ResourceObjectType.VpnGateway, _vpnGatewayDetailsDao);
|
_daoMap.put(ResourceObjectType.VpnGateway, _vpnGatewayDetailsDao);
|
||||||
|
_daoMap.put(ResourceObjectType.CustomerGateway, _customerGatewayDetailsDao);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -42,6 +42,7 @@ import com.cloud.network.dao.IPAddressDao;
|
|||||||
import com.cloud.network.dao.LoadBalancerDao;
|
import com.cloud.network.dao.LoadBalancerDao;
|
||||||
import com.cloud.network.dao.NetworkDao;
|
import com.cloud.network.dao.NetworkDao;
|
||||||
import com.cloud.network.dao.RemoteAccessVpnDao;
|
import com.cloud.network.dao.RemoteAccessVpnDao;
|
||||||
|
import com.cloud.network.dao.Site2SiteCustomerGatewayDao;
|
||||||
import com.cloud.network.dao.Site2SiteVpnGatewayDao;
|
import com.cloud.network.dao.Site2SiteVpnGatewayDao;
|
||||||
import com.cloud.network.rules.dao.PortForwardingRulesDao;
|
import com.cloud.network.rules.dao.PortForwardingRulesDao;
|
||||||
import com.cloud.network.security.dao.SecurityGroupDao;
|
import com.cloud.network.security.dao.SecurityGroupDao;
|
||||||
@ -141,6 +142,8 @@ public class TaggedResourceManagerImpl extends ManagerBase implements TaggedReso
|
|||||||
NetworkACLDao _networkACLListDao;
|
NetworkACLDao _networkACLListDao;
|
||||||
@Inject
|
@Inject
|
||||||
Site2SiteVpnGatewayDao _vpnGatewayDao;
|
Site2SiteVpnGatewayDao _vpnGatewayDao;
|
||||||
|
@Inject
|
||||||
|
Site2SiteCustomerGatewayDao _customerGatewayDao;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
||||||
@ -168,6 +171,7 @@ public class TaggedResourceManagerImpl extends ManagerBase implements TaggedReso
|
|||||||
_daoMap.put(ResourceObjectType.PrivateGateway, _vpcGatewayDao);
|
_daoMap.put(ResourceObjectType.PrivateGateway, _vpcGatewayDao);
|
||||||
_daoMap.put(ResourceObjectType.NetworkACLList, _networkACLListDao);
|
_daoMap.put(ResourceObjectType.NetworkACLList, _networkACLListDao);
|
||||||
_daoMap.put(ResourceObjectType.VpnGateway, _vpnGatewayDao);
|
_daoMap.put(ResourceObjectType.VpnGateway, _vpnGatewayDao);
|
||||||
|
_daoMap.put(ResourceObjectType.CustomerGateway, _customerGatewayDao);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user