本文整理汇总了Java中org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer类的典型用法代码示例。如果您正苦于以下问题:Java MetadataXpp3Writer类的具体用法?Java MetadataXpp3Writer怎么用?Java MetadataXpp3Writer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MetadataXpp3Writer类属于org.apache.maven.artifact.repository.metadata.io.xpp3包,在下文中一共展示了MetadataXpp3Writer类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getSize
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
/**
* {@inheritDoc}
*/
public long getSize()
throws IOException
{
try
{
Metadata metadata = store.getMetadata( path );
MetadataXpp3Writer writer = new MetadataXpp3Writer();
StringWriter stringWriter = new StringWriter();
writer.write( stringWriter, metadata );
return stringWriter.toString().getBytes().length;
}
catch ( MetadataNotFoundException e )
{
IOException ioe = new IOException( "File not found" );
ioe.initCause( e );
throw ioe;
}
}
开发者ID:mojohaus,项目名称:mrm,代码行数:22,代码来源:MetadataFileEntry.java
示例2: getInputStream
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
/**
* {@inheritDoc}
*/
public InputStream getInputStream()
throws IOException
{
try
{
Metadata metadata = store.getMetadata( path );
MetadataXpp3Writer writer = new MetadataXpp3Writer();
StringWriter stringWriter = new StringWriter();
writer.write( stringWriter, metadata );
return new ByteArrayInputStream( stringWriter.toString().getBytes() );
}
catch ( MetadataNotFoundException e )
{
return null;
}
}
开发者ID:mojohaus,项目名称:mrm,代码行数:20,代码来源:MetadataFileEntry.java
示例3: write
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
private void write( File metadataFile, Metadata metadata )
throws RepositoryException
{
Writer writer = null;
try
{
metadataFile.getParentFile().mkdirs();
writer = WriterFactory.newXmlWriter( metadataFile );
new MetadataXpp3Writer().write( writer, metadata );
}
catch ( IOException e )
{
throw new RepositoryException( "Could not write metadata " + metadataFile + ": " + e.getMessage(), e );
}
finally
{
IOUtil.close( writer );
}
}
开发者ID:gems-uff,项目名称:oceano,代码行数:20,代码来源:MavenMetadata.java
示例4: writeMetadataFile
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
private void writeMetadataFile(Metadata metadata, File file) {
try {
MetadataXpp3Writer writer = new MetadataXpp3Writer();
try (FileOutputStream outputStream = new FileOutputStream(file)) {
writer.write(outputStream, metadata);
}
}
catch (IOException ex) {
throw new IllegalStateException(ex);
}
}
开发者ID:spring-io,项目名称:artifactory-resource,代码行数:12,代码来源:MavenMetadataGenerator.java
示例5: updateMetadata
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
private void updateMetadata( RepositoryMetadata artifactMetadata, ArtifactRepository targetRepository,
Metadata newMetadata, FileTransaction transaction )
throws ArtifactConversionException
{
File file = new File( targetRepository.getBasedir(),
targetRepository.pathOfRemoteRepositoryMetadata( artifactMetadata ) );
Metadata metadata;
boolean changed;
if ( file.exists() )
{
metadata = readMetadata( file );
changed = metadata.merge( newMetadata );
}
else
{
changed = true;
metadata = newMetadata;
}
if ( changed )
{
try (StringWriter writer = new StringWriter())
{
MetadataXpp3Writer mappingWriter = new MetadataXpp3Writer();
mappingWriter.write( writer, metadata );
transaction.createFile( writer.toString(), file, digesters );
}
catch ( IOException e )
{
throw new ArtifactConversionException( Messages.getString( "error.writing.target.metadata" ),
e ); //$NON-NLS-1$
}
}
}
开发者ID:ruikom,项目名称:apache-archiva,代码行数:40,代码来源:LegacyToDefaultConverter.java
示例6: setMetadata
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
@Override
public void setMetadata( String path, Metadata metadata )
throws IOException
{
if ( !canWrite )
{
throw new UnsupportedOperationException( "Read-only store" );
}
File file = root;
String[] parts = StringUtils.strip( path, "/" ).split( "/" );
for ( int i = 0; i < parts.length; i++ )
{
file = new File( file, parts[i] );
}
file = new File( file, "maven-metadata.xml" );
MetadataXpp3Writer writer = new MetadataXpp3Writer();
OutputStream outputStream = null;
try
{
outputStream = new FileOutputStream( file );
writer.write( outputStream, metadata );
}
finally {
IOUtils.closeQuietly( outputStream );
}
}
开发者ID:mojohaus,项目名称:mrm,代码行数:30,代码来源:DiskArtifactStore.java
示例7: mavenMetadataToString
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
/**
* Create xml string from the input <code>Metadata</code>.
*
* @param metadata Maven metadata object
* @return Xml string for the input metadata
*/
public static String mavenMetadataToString(Metadata metadata) throws IOException {
MetadataXpp3Writer writer = new MetadataXpp3Writer();
StringWriter stringWriter = new StringWriter();
writer.write(stringWriter, metadata);
return stringWriter.toString();
}
开发者ID:alancnet,项目名称:artifactory,代码行数:13,代码来源:MavenModelUtils.java
示例8: updateMetadata
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
private void updateMetadata( RepositoryMetadata artifactMetadata, ArtifactRepository targetRepository,
Metadata newMetadata, FileTransaction transaction )
throws ArtifactConversionException
{
Path file = Paths.get( targetRepository.getBasedir(),
targetRepository.pathOfRemoteRepositoryMetadata( artifactMetadata ) );
Metadata metadata;
boolean changed;
if ( Files.exists(file) )
{
metadata = readMetadata( file );
changed = metadata.merge( newMetadata );
}
else
{
changed = true;
metadata = newMetadata;
}
if ( changed )
{
try (StringWriter writer = new StringWriter())
{
MetadataXpp3Writer mappingWriter = new MetadataXpp3Writer();
mappingWriter.write( writer, metadata );
transaction.createFile( writer.toString(), file, digesters );
}
catch ( IOException e )
{
throw new ArtifactConversionException( Messages.getString( "error.writing.target.metadata" ),
e ); //$NON-NLS-1$
}
}
}
开发者ID:apache,项目名称:archiva,代码行数:40,代码来源:LegacyToDefaultConverter.java
示例9: setupMetadataVersions
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
private byte[] setupMetadataVersions( final String... versions )
throws IOException
{
final Metadata md = new Metadata();
final Versioning v = new Versioning();
md.setVersioning( v );
v.setVersions( Arrays.asList( versions ) );
final ByteArrayOutputStream baos = new ByteArrayOutputStream();
new MetadataXpp3Writer().write( baos, md );
return baos.toByteArray();
}
开发者ID:release-engineering,项目名称:pom-manipulation-ext,代码行数:14,代码来源:VersioningCalculatorTest.java
示例10: generateMavenMetadata
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
/**
* Generate the maven-metadata-local.xml for the given Maven <code>Artifact</code>.
*
* @param artifact the Maven <code>Artifact</code>.
* @param target the target maven-metadata-local.xml file to generate.
* @throws IOException if the maven-metadata-local.xml can't be generated.
*/
static void generateMavenMetadata(Artifact artifact, File target) throws IOException {
target.getParentFile().mkdirs();
Metadata metadata = new Metadata();
metadata.setGroupId(artifact.getGroupId());
metadata.setArtifactId(artifact.getArtifactId());
metadata.setVersion(artifact.getVersion());
metadata.setModelVersion("1.1.0");
Versioning versioning = new Versioning();
versioning.setLastUpdatedTimestamp(new Date(System.currentTimeMillis()));
Snapshot snapshot = new Snapshot();
snapshot.setLocalCopy(true);
versioning.setSnapshot(snapshot);
SnapshotVersion snapshotVersion = new SnapshotVersion();
snapshotVersion.setClassifier(artifact.getClassifier());
snapshotVersion.setVersion(artifact.getVersion());
snapshotVersion.setExtension(artifact.getType());
snapshotVersion.setUpdated(versioning.getLastUpdated());
versioning.addSnapshotVersion(snapshotVersion);
metadata.setVersioning(versioning);
MetadataXpp3Writer metadataWriter = new MetadataXpp3Writer();
Writer writer = new FileWriter(target);
metadataWriter.write(writer, metadata);
}
开发者ID:retog,项目名称:karaf-maven-plugin,代码行数:34,代码来源:MavenUtil.java
示例11: writeMetadata
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
private static void writeMetadata(Artifact a, File repository) {
Versioning v = new Versioning();
// while multiple POMs get downloaded for the same groupId+artifactId,
// there'll be only one jar for each groupId+artifactId, so we just need
// to record that
v.setRelease(a.getVersion());
v.setLatest(a.getVersion());
v.addVersion(a.getVersion());
ArtifactRepositoryMetadata metadata = new ArtifactRepositoryMetadata(
new DefaultArtifact(a.getGroupId(), a.getArtifactId(),
VersionRange.createFromVersion(a.getVersion()),
null, a.getExtension(), null,new DefaultArtifactHandler()),v );
File metadataFile = new File(repository,
a.getGroupId().replace('.', '/')+"/" +
a.getArtifactId() +"/maven-metadata.xml");
MetadataXpp3Writer metadataWriter = new MetadataXpp3Writer();
Writer writer = null;
try {
writer = new FileWriter(metadataFile);
metadataWriter.write(writer, metadata.getMetadata());
} catch (IOException e) {
throw new Error("Error writing artifact metdata.", e);
} finally {
IOUtil.close(writer);
}
}
开发者ID:ndeloof,项目名称:bees-cli-bootstrap,代码行数:34,代码来源:Assembler.java
示例12: fixTimestamp
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
/**
* Ensures the last updated timestamp of the specified metadata does not refer to the future and fixes the local metadata if necessary to allow
* proper merging/updating of metadata during deployment.
*/
private void fixTimestamp( File metadataFile, Metadata metadata, Metadata reference )
{
boolean changed = false;
if ( metadata != null && reference != null )
{
Versioning versioning = metadata.getVersioning();
Versioning versioningRef = reference.getVersioning();
if ( versioning != null && versioningRef != null )
{
String lastUpdated = versioning.getLastUpdated();
String now = versioningRef.getLastUpdated();
if ( lastUpdated != null && now != null && now.compareTo( lastUpdated ) < 0 )
{
getLogger().warn(
"The last updated timestamp in " + metadataFile + " refers to the future (now = "
+ now + ", lastUpdated = " + lastUpdated
+ "). Please verify that the clocks of all"
+ " deploying machines are reasonably synchronized." );
versioning.setLastUpdated( now );
changed = true;
}
}
}
if ( changed )
{
getLogger().debug( "Repairing metadata in " + metadataFile );
Writer writer = null;
try
{
writer = WriterFactory.newXmlWriter( metadataFile );
new MetadataXpp3Writer().write( writer, metadata );
}
catch ( IOException e )
{
String msg = "Could not write fixed metadata to " + metadataFile + ": " + e.getMessage();
if ( getLogger().isDebugEnabled() )
{
getLogger().warn( msg, e );
}
else
{
getLogger().warn( msg );
}
}
finally
{
IOUtil.close( writer );
}
}
}
开发者ID:gems-uff,项目名称:oceano,代码行数:58,代码来源:DefaultRepositoryMetadataManager.java
示例13: updateRepositoryMetadata
import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer; //导入依赖的package包/类
protected void updateRepositoryMetadata( ArtifactRepository localRepository,
ArtifactRepository remoteRepository )
throws IOException, XmlPullParserException
{
MetadataXpp3Reader mappingReader = new MetadataXpp3Reader();
Metadata metadata = null;
File metadataFile = new File( localRepository.getBasedir(),
localRepository.pathOfLocalRepositoryMetadata( this, remoteRepository ) );
if ( metadataFile.length() == 0 )
{
metadataFile.delete();
}
else if ( metadataFile.exists() )
{
Reader reader = null;
try
{
reader = ReaderFactory.newXmlReader( metadataFile );
metadata = mappingReader.read( reader, false );
}
finally
{
IOUtil.close( reader );
}
}
boolean changed;
// If file could not be found or was not valid, start from scratch
if ( metadata == null )
{
metadata = this.metadata;
changed = true;
}
else
{
changed = metadata.merge( this.metadata );
}
// beware meta-versions!
String version = metadata.getVersion();
if ( version != null && ( Artifact.LATEST_VERSION.equals( version ) || Artifact.RELEASE_VERSION.equals(
version ) ) )
{
// meta-versions are not valid <version/> values...don't write them.
metadata.setVersion( null );
}
if ( changed || !metadataFile.exists() )
{
Writer writer = null;
try
{
metadataFile.getParentFile().mkdirs();
writer = WriterFactory.newXmlWriter( metadataFile );
MetadataXpp3Writer mappingWriter = new MetadataXpp3Writer();
mappingWriter.write( writer, metadata );
}
finally
{
IOUtil.close( writer );
}
}
else
{
metadataFile.setLastModified( System.currentTimeMillis() );
}
}
开发者ID:gems-uff,项目名称:oceano,代码行数:77,代码来源:AbstractRepositoryMetadata.java
注:本文中的org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论