001 package org.apache.maven.profiles; 002 003 /* 004 * Licensed to the Apache Software Foundation (ASF) under one 005 * or more contributor license agreements. See the NOTICE file 006 * distributed with this work for additional information 007 * regarding copyright ownership. The ASF licenses this file 008 * to you under the Apache License, Version 2.0 (the 009 * "License"); you may not use this file except in compliance 010 * with the License. You may obtain a copy of the License at 011 * 012 * http://www.apache.org/licenses/LICENSE-2.0 013 * 014 * Unless required by applicable law or agreed to in writing, 015 * software distributed under the License is distributed on an 016 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 017 * KIND, either express or implied. See the License for the 018 * specific language governing permissions and limitations 019 * under the License. 020 */ 021 022 import org.apache.maven.model.Activation; 023 import org.apache.maven.model.ActivationFile; 024 import org.apache.maven.model.ActivationProperty; 025 import org.apache.maven.model.Profile; 026 import org.apache.maven.model.Repository; 027 028 import java.util.Iterator; 029 import java.util.List; 030 031 @Deprecated 032 public class ProfilesConversionUtils 033 { 034 private ProfilesConversionUtils() 035 { 036 } 037 038 public static Profile convertFromProfileXmlProfile( org.apache.maven.profiles.Profile profileXmlProfile ) 039 { 040 Profile profile = new Profile(); 041 042 profile.setId( profileXmlProfile.getId() ); 043 044 profile.setSource( "profiles.xml" ); 045 046 org.apache.maven.profiles.Activation profileActivation = profileXmlProfile.getActivation(); 047 048 if ( profileActivation != null ) 049 { 050 Activation activation = new Activation(); 051 052 activation.setActiveByDefault( profileActivation.isActiveByDefault() ); 053 054 activation.setJdk( profileActivation.getJdk() ); 055 056 org.apache.maven.profiles.ActivationProperty profileProp = profileActivation.getProperty(); 057 058 if ( profileProp != null ) 059 { 060 ActivationProperty prop = new ActivationProperty(); 061 062 prop.setName( profileProp.getName() ); 063 prop.setValue( profileProp.getValue() ); 064 065 activation.setProperty( prop ); 066 } 067 068 069 ActivationOS profileOs = profileActivation.getOs(); 070 071 if ( profileOs != null ) 072 { 073 org.apache.maven.model.ActivationOS os = new org.apache.maven.model.ActivationOS(); 074 075 os.setArch( profileOs.getArch() ); 076 os.setFamily( profileOs.getFamily() ); 077 os.setName( profileOs.getName() ); 078 os.setVersion( profileOs.getVersion() ); 079 080 activation.setOs( os ); 081 } 082 083 org.apache.maven.profiles.ActivationFile profileFile = profileActivation.getFile(); 084 085 if ( profileFile != null ) 086 { 087 ActivationFile file = new ActivationFile(); 088 089 file.setExists( profileFile.getExists() ); 090 file.setMissing( profileFile.getMissing() ); 091 092 activation.setFile( file ); 093 } 094 095 profile.setActivation( activation ); 096 } 097 098 profile.setProperties( profileXmlProfile.getProperties() ); 099 100 List repos = profileXmlProfile.getRepositories(); 101 if ( repos != null ) 102 { 103 for ( Object repo : repos ) 104 { 105 profile.addRepository( convertFromProfileXmlRepository( (org.apache.maven.profiles.Repository) repo ) ); 106 } 107 } 108 109 List pluginRepos = profileXmlProfile.getPluginRepositories(); 110 if ( pluginRepos != null ) 111 { 112 for ( Object pluginRepo : pluginRepos ) 113 { 114 profile.addPluginRepository( 115 convertFromProfileXmlRepository( (org.apache.maven.profiles.Repository) pluginRepo ) ); 116 } 117 } 118 119 return profile; 120 } 121 122 private static Repository convertFromProfileXmlRepository( org.apache.maven.profiles.Repository profileXmlRepo ) 123 { 124 Repository repo = new Repository(); 125 126 repo.setId( profileXmlRepo.getId() ); 127 repo.setLayout( profileXmlRepo.getLayout() ); 128 repo.setName( profileXmlRepo.getName() ); 129 repo.setUrl( profileXmlRepo.getUrl() ); 130 131 if ( profileXmlRepo.getSnapshots() != null ) 132 { 133 repo.setSnapshots( convertRepositoryPolicy( profileXmlRepo.getSnapshots() ) ); 134 } 135 if ( profileXmlRepo.getReleases() != null ) 136 { 137 repo.setReleases( convertRepositoryPolicy( profileXmlRepo.getReleases() ) ); 138 } 139 140 return repo; 141 } 142 143 private static org.apache.maven.model.RepositoryPolicy convertRepositoryPolicy( RepositoryPolicy profileXmlRepo ) 144 { 145 org.apache.maven.model.RepositoryPolicy policy = new org.apache.maven.model.RepositoryPolicy(); 146 policy.setEnabled( profileXmlRepo.isEnabled() ); 147 policy.setUpdatePolicy( profileXmlRepo.getUpdatePolicy() ); 148 policy.setChecksumPolicy( profileXmlRepo.getChecksumPolicy() ); 149 return policy; 150 } 151 152 }